Class endstone::IpBanList¶
ClassList > endstone > IpBanList
Represents a ban list, containing banned IP addresses.
- #include <endstone/ban/ip_ban_list.h>
Inherits the following classes: endstone::BanList
Public Functions¶
| Type | Name | 
|---|---|
| virtual IpBanEntry & | addBan (std::string address, std::optional< std::string > reason, std::optional< BanEntry::Date > expires, std::optional< std::string > source) override = 0 Adds a ban to this list. If a previous ban exists, this will update the previous entry. | 
| virtual IpBanEntry & | addBan (std::string address, std::optional< std::string > reason, std::chrono::seconds duration, std::optional< std::string > source) override = 0 Adds a ban to this list. If a previous ban exists, this will update the previous entry. | 
| virtual const IpBanEntry * | getBanEntry (std::string address) override const = 0 Gets a BanEntry by IP address. | 
| virtual IpBanEntry * | getBanEntry (std::string address) override = 0 Gets a BanEntry by IP address. | 
| virtual std::vector< const IpBanEntry * > | getEntries () override const = 0 Gets a vector containing pointers to every BanEntry in this list. | 
| virtual std::vector< IpBanEntry * > | getEntries () override = 0 Gets a vector containing pointers to every BanEntry in this list. | 
| virtual bool | isBanned (std::string address) override const = 0 Checks if a BanEntry exists for the target, indicating an active ban status. | 
| virtual void | removeBan (std::string address) override = 0 Removes the specified IP address from this list, therefore indicating a "not banned" status. | 
| ~IpBanList () override | 
Public Functions inherited from endstone::BanList¶
| Type | Name | 
|---|---|
| virtual T & | addBan (std::string target, std::optional< std::string > reason, std::optional< BanEntry::Date > expires, std::optional< std::string > source) = 0 Adds a ban to this list. If a previous ban exists, this will update the previous entry. | 
| virtual T & | addBan (std::string target, std::optional< std::string > reason, std::chrono::seconds duration, std::optional< std::string > source) = 0 Adds a ban to this list. If a previous ban exists, this will update the previous entry. | 
| virtual const T * | getBanEntry (std::string target) const = 0 Gets a BanEntry by target. | 
| virtual T * | getBanEntry (std::string target) = 0 Gets a BanEntry by target. | 
| virtual std::vector< const T * > | getEntries () const = 0 Gets a vector containing pointers to every BanEntry in this list. | 
| virtual std::vector< T * > | getEntries () = 0 Gets a vector containing pointers to every BanEntry in this list. | 
| virtual bool | isBanned (std::string target) const = 0 Checks if a BanEntry exists for the target, indicating an active ban status. | 
| virtual void | removeBan (std::string target) = 0 Removes the specified target from this list, therefore indicating a "not banned" status. | 
| virtual | ~BanList () = default | 
Public Functions Documentation¶
function addBan [½]¶
Adds a ban to this list. If a previous ban exists, this will update the previous entry.
virtual IpBanEntry & endstone::IpBanList::addBan (
    std::string address,
    std::optional< std::string > reason,
    std::optional< BanEntry::Date > expires,
    std::optional< std::string > source
) override = 0
Parameters:
- addressThe IP address of the target.
- reasonThe reason for the ban, std::nullopt indicates implementation default.
- expiresThe date for the ban's expiration (unban), or std::nullopt to imply forever.
- sourceThe source of the ban, std::nullopt indicates implementation default.
Returns:
IpBanEntry& The entry for the newly created ban, or the entry for the (updated) previous ban.
Implements endstone::BanList::addBan
function addBan [2/2]¶
Adds a ban to this list. If a previous ban exists, this will update the previous entry.
virtual IpBanEntry & endstone::IpBanList::addBan (
    std::string address,
    std::optional< std::string > reason,
    std::chrono::seconds duration,
    std::optional< std::string > source
) override = 0
Parameters:
- addressThe IP address of the target.
- reasonThe reason for the ban, std::nullopt indicates implementation default.
- durationThe duration of the ban
- sourceThe source of the ban, std::nullopt indicates implementation default.
Returns:
IpBanEntry& The entry for the newly created ban, or the entry for the (updated) previous ban.
Implements endstone::BanList::addBan
function getBanEntry [½]¶
Gets a BanEntry by IP address.
virtual const IpBanEntry * endstone::IpBanList::getBanEntry (
    std::string address
) override const = 0
Parameters:
- addressThe IP address to search for.
Returns:
IpBanEntry* The corresponding entry, or nullptr if none found.
Implements endstone::BanList::getBanEntry
function getBanEntry [2/2]¶
Gets a BanEntry by IP address.
Parameters:
- addressThe IP address to search for.
Returns:
IpBanEntry* The corresponding entry, or nullptr if none found.
Implements endstone::BanList::getBanEntry
function getEntries [½]¶
Gets a vector containing pointers to every BanEntry in this list.
Returns:
A vector containing pointers to every entry tracked by this list.
Implements endstone::BanList::getEntries
function getEntries [2/2]¶
Gets a vector containing pointers to every BanEntry in this list.
Returns:
A vector containing pointers to every entry tracked by this list.
Implements endstone::BanList::getEntries
function isBanned¶
Checks if a BanEntry exists for the target, indicating an active ban status.
Parameters:
- addressThe IP address to find.
Returns:
true If a BanEntry exists for the target, indicating an active ban status.
Returns:
false Otherwise.
Implements endstone::BanList::isBanned
function removeBan¶
Removes the specified IP address from this list, therefore indicating a "not banned" status.
Parameters:
- addressThe IP address to remove from this list.
Implements endstone::BanList::removeBan
function ~IpBanList¶
The documentation for this class was generated from the following file include/endstone/ban/ip_ban_list.h