Class IpFilterImpl
java.lang.Object
com.biglybt.core.ipfilter.impl.IpFilterImpl
- All Implemented Interfaces:
IpFilter
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final FrequencyLimitedDispatcher(package private) static final AEMonitorprivate ByteArrayHashMap<String> private final CopyOnWriteList<IpFilterExternalHandler> (package private) boolean(package private) booleanprivate final IPBannerImplprivate static IpFilterImplprivate final IpFilterAutoLoaderImplprivate final LinkedListprivate long(package private) final CopyOnWriteList<IPFilterListener> protected static final LogIDsprotected static final LogIDsprivate static final intprivate intprivate intprivate final IPAddressRangeManagerV4private final IPAddressRangeManagerV6 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate booleanaddBlockedIP(BlockedIp ip, byte[] torrent_hash, boolean loggable) voidaddExcludedHash(byte[] hash) voidvoidvoidbooleanbooleanbooleanprivate booleanprotected voidprotected IpRangecheckExternalHandlers(byte[] torrent_hash, String address) protected IpRangecheckExternalHandlers(byte[] torrent_hash, InetAddress address) voidvoidcreateRange(int addressType, boolean sessionOnly) BannedIp[]getFile()booleanstatic IpFilterlongprotected CopyOnWriteList<IPFilterListener> intintintintIpRange[]booleanbooleanbooleanbooleanbooleanisInRange(String ipAddress, String name, byte[] torrent_hash, boolean is_specific, boolean loggable) booleanisInRange(InetAddress ipAddress, String name, byte[] torrent_hash, boolean is_specific, boolean loggable) private voidloadFilters(boolean allowAsyncDownloading, boolean loadOldWhileAsyncDownloading) protected voidvoidreload()voidreload(boolean allowAsyncDownloading) voidvoidremoveExcludedHash(byte[] hash) voidvoidvoidremoveRange(IpRange range) voidsave()voidsetEnabled(boolean enabled) voidsetInRangeAddressesAreAllowed(boolean b) protected voidsetValidOrNot(IpRange range, boolean valid) booleanboolean
-
Field Details
-
LOGID
-
LOGID_NWMAN
-
MAX_BLOCKS_TO_REMEMBER
private static final int MAX_BLOCKS_TO_REMEMBER- See Also:
-
ipFilter
-
class_mon
-
range_manager_v4
-
range_manager_v6
-
ipsBlocked
-
num_ips_blocked
private int num_ips_blocked -
num_ips_blocked_loggable
private int num_ips_blocked_loggable -
last_update_time
private long last_update_time -
ipBanner
-
listenerz
-
external_handlers
-
blockedListChangedDispatcher
-
ipFilterAutoLoader
-
ip_filter_enabled
boolean ip_filter_enabled -
ip_filter_allow
boolean ip_filter_allow -
excluded_hashes
-
-
Constructor Details
-
IpFilterImpl
private IpFilterImpl()
-
-
Method Details
-
getInstance
-
getFile
-
reload
-
reloadSync
- Specified by:
reloadSyncin interfaceIpFilter- Throws:
Exception
-
reload
-
save
-
loadFilters
-
isInRange
-
isInRange
-
isInRange
-
isInRange
public boolean isInRange(InetAddress ipAddress, String name, byte[] torrent_hash, boolean is_specific, boolean loggable) -
checkExternalHandlers
-
checkExternalHandlers
-
addBlockedIP
-
getInRangeAddressesAreAllowed
public boolean getInRangeAddressesAreAllowed()- Specified by:
getInRangeAddressesAreAllowedin interfaceIpFilter
-
setInRangeAddressesAreAllowed
public void setInRangeAddressesAreAllowed(boolean b) - Specified by:
setInRangeAddressesAreAllowedin interfaceIpFilter
-
getRanges
-
createRange
- Specified by:
createRangein interfaceIpFilter
-
addRange
-
removeRange
- Specified by:
removeRangein interfaceIpFilter
-
getNbRanges
public int getNbRanges()- Specified by:
getNbRangesin interfaceIpFilter
-
setValidOrNot
-
getNbIpsBlocked
public int getNbIpsBlocked()- Specified by:
getNbIpsBlockedin interfaceIpFilter
-
getNbIpsBlockedAndLoggable
public int getNbIpsBlockedAndLoggable()- Specified by:
getNbIpsBlockedAndLoggablein interfaceIpFilter
-
ban
-
ban
-
isBanned
-
getBlockedIps
- Specified by:
getBlockedIpsin interfaceIpFilter
-
clearBlockedIPs
public void clearBlockedIPs()- Specified by:
clearBlockedIPsin interfaceIpFilter
-
addExcludedHash
public void addExcludedHash(byte[] hash) - Specified by:
addExcludedHashin interfaceIpFilter
-
removeExcludedHash
public void removeExcludedHash(byte[] hash) - Specified by:
removeExcludedHashin interfaceIpFilter
-
isEnabled
-
setEnabled
public void setEnabled(boolean enabled) - Specified by:
setEnabledin interfaceIpFilter
-
markAsUpToDate
protected void markAsUpToDate() -
getLastUpdateTime
public long getLastUpdateTime()- Specified by:
getLastUpdateTimein interfaceIpFilter
-
addListener
- Specified by:
addListenerin interfaceIpFilter
-
removeListener
- Specified by:
removeListenerin interfaceIpFilter
-
addExternalHandler
- Specified by:
addExternalHandlerin interfaceIpFilter
-
removeExternalHandler
- Specified by:
removeExternalHandlerin interfaceIpFilter
-
getListeners
-
banListChanged
protected void banListChanged() -
ban
-
ban
-
clearBannedIps
public void clearBannedIps()- Specified by:
clearBannedIpsin interfaceIpFilter
-
getBannedIps
- Specified by:
getBannedIpsin interfaceIpFilter
-
getNbBannedIps
public int getNbBannedIps()- Specified by:
getNbBannedIpsin interfaceIpFilter
-
unban
-
unban
-