geforkt von Mirrors/Paper
b2d54f59bb
By: Thinkofdeath <thinkofdeath@spigotmc.org>
129 Zeilen
3.4 KiB
Java
129 Zeilen
3.4 KiB
Java
package org.bukkit;
|
|
|
|
import java.util.Date;
|
|
|
|
/**
|
|
* A single entry from a ban list. This may represent either a player ban or
|
|
* an IP ban.
|
|
* <p>
|
|
* Ban entries include the following properties:
|
|
* <table border=1>
|
|
* <caption>Property information</caption>
|
|
* <tr>
|
|
* <th>Property</th>
|
|
* <th>Description</th>
|
|
* </tr><tr>
|
|
* <td>Target Name / IP Address</td>
|
|
* <td>The target name or IP address</td>
|
|
* </tr><tr>
|
|
* <td>Creation Date</td>
|
|
* <td>The creation date of the ban</td>
|
|
* </tr><tr>
|
|
* <td>Source</td>
|
|
* <td>The source of the ban, such as a player, console, plugin, etc</td>
|
|
* </tr><tr>
|
|
* <td>Expiration Date</td>
|
|
* <td>The expiration date of the ban</td>
|
|
* </tr><tr>
|
|
* <td>Reason</td>
|
|
* <td>The reason for the ban</td>
|
|
* </tr>
|
|
* </table>
|
|
* <p>
|
|
* Unsaved information is not automatically written to the implementation's
|
|
* ban list, instead, the {@link #save()} method must be called to write the
|
|
* changes to the ban list. If this ban entry has expired (such as from an
|
|
* unban) and is no longer found in the list, the {@link #save()} call will
|
|
* re-add it to the list, therefore banning the victim specified.
|
|
* <p>
|
|
* Likewise, changes to the associated {@link BanList} or other entries may or
|
|
* may not be reflected in this entry.
|
|
*/
|
|
public interface BanEntry {
|
|
|
|
/**
|
|
* Gets the target involved. This may be in the form of an IP or a player
|
|
* name.
|
|
*
|
|
* @return the target name or IP address
|
|
*/
|
|
public String getTarget();
|
|
|
|
/**
|
|
* Gets the date this ban entry was created.
|
|
*
|
|
* @return the creation date
|
|
*/
|
|
public Date getCreated();
|
|
|
|
/**
|
|
* Sets the date this ban entry was created.
|
|
*
|
|
* @param created the new created date, cannot be null
|
|
* @see #save() saving changes
|
|
*/
|
|
public void setCreated(Date created);
|
|
|
|
/**
|
|
* Gets the source of this ban.
|
|
* <p>
|
|
* Note: A source is considered any String, although this is generally a
|
|
* player name.
|
|
*
|
|
* @return the source of the ban
|
|
*/
|
|
public String getSource();
|
|
|
|
/**
|
|
* Sets the source of this ban.
|
|
* <p>
|
|
* Note: A source is considered any String, although this is generally a
|
|
* player name.
|
|
*
|
|
* @param source the new source where null values become empty strings
|
|
* @see #save() saving changes
|
|
*/
|
|
public void setSource(String source);
|
|
|
|
/**
|
|
* Gets the date this ban expires on, or null for no defined end date.
|
|
*
|
|
* @return the expiration date
|
|
*/
|
|
public Date getExpiration();
|
|
|
|
/**
|
|
* Sets the date this ban expires on. Null values are considered
|
|
* "infinite" bans.
|
|
*
|
|
* @param expiration the new expiration date, or null to indicate an
|
|
* eternity
|
|
* @see #save() saving changes
|
|
*/
|
|
public void setExpiration(Date expiration);
|
|
|
|
/**
|
|
* Gets the reason for this ban.
|
|
*
|
|
* @return the ban reason, or null if not set
|
|
*/
|
|
public String getReason();
|
|
|
|
/**
|
|
* Sets the reason for this ban. Reasons must not be null.
|
|
*
|
|
* @param reason the new reason, null values assume the implementation
|
|
* default
|
|
* @see #save() saving changes
|
|
*/
|
|
public void setReason(String reason);
|
|
|
|
/**
|
|
* Saves the ban entry, overwriting any previous data in the ban list.
|
|
* <p>
|
|
* Saving the ban entry of an unbanned player will cause the player to be
|
|
* banned once again.
|
|
*/
|
|
public void save();
|
|
}
|