Package org.bukkit

Interface BanEntry


  • public interface BanEntry
    A single entry from a ban list. This may represent either a player ban or an IP ban.

    Ban entries include the following properties:

    Property information
    Property Description
    Target Name / IP Address The target name or IP address
    Creation Date The creation date of the ban
    Source The source of the ban, such as a player, console, plugin, etc
    Expiration Date The expiration date of the ban
    Reason The reason for the ban

    Unsaved information is not automatically written to the implementation's ban list, instead, the 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 save() call will re-add it to the list, therefore banning the victim specified.

    Likewise, changes to the associated BanList or other entries may or may not be reflected in this entry.

    • Method Detail

      • getTarget

        @NotNull
        String getTarget()
        Gets the target involved. This may be in the form of an IP or a player name.
        Returns:
        the target name or IP address
      • getCreated

        @NotNull
        Date getCreated()
        Gets the date this ban entry was created.
        Returns:
        the creation date
      • setCreated

        void setCreated​(@NotNull
                        Date created)
        Sets the date this ban entry was created.
        Parameters:
        created - the new created date, cannot be null
        See Also:
        saving changes
      • getSource

        @NotNull
        String getSource()
        Gets the source of this ban.

        Note: A source is considered any String, although this is generally a player name.

        Returns:
        the source of the ban
      • setSource

        void setSource​(@NotNull
                       String source)
        Sets the source of this ban.

        Note: A source is considered any String, although this is generally a player name.

        Parameters:
        source - the new source where null values become empty strings
        See Also:
        saving changes
      • getExpiration

        @Nullable
        Date getExpiration()
        Gets the date this ban expires on, or null for no defined end date.
        Returns:
        the expiration date
      • setExpiration

        void setExpiration​(@Nullable
                           Date expiration)
        Sets the date this ban expires on. Null values are considered "infinite" bans.
        Parameters:
        expiration - the new expiration date, or null to indicate an eternity
        See Also:
        saving changes
      • getReason

        @Nullable
        String getReason()
        Gets the reason for this ban.
        Returns:
        the ban reason, or null if not set
      • setReason

        void setReason​(@Nullable
                       String reason)
        Sets the reason for this ban. Reasons must not be null.
        Parameters:
        reason - the new reason, null values assume the implementation default
        See Also:
        saving changes
      • save

        void save()
        Saves the ban entry, overwriting any previous data in the ban list.

        Saving the ban entry of an unbanned player will cause the player to be banned once again.