Package net.i2p.router
Class Banlist
- java.lang.Object
-
- net.i2p.router.Banlist
-
public class Banlist extends Object
Routers are banlisted only if none of our transports can talk to them or their signed router info is completely screwy. Individual transports manage their own unreachable lists and do not generally add to the overall banlist.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Banlist.Entry
-
Field Summary
Fields Modifier and Type Field Description static long
BANLIST_CLEANER_START_DELAY
static long
BANLIST_DURATION_FOREVER
static long
BANLIST_DURATION_MAX
static long
BANLIST_DURATION_MS
Don't make this too long as the failure may be transient due to connection limits.static long
BANLIST_DURATION_PARTIAL
-
Constructor Summary
Constructors Constructor Description Banlist(RouterContext context)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description boolean
banlistRouter(String reasonCode, Hash peer, String reason)
ick have to put the reasonCode in the front to avoid ambiguityboolean
banlistRouter(Hash peer)
boolean
banlistRouter(Hash peer, String reason)
boolean
banlistRouter(Hash peer, String reason, String transport)
boolean
banlistRouter(Hash peer, String reason, String transport, boolean forever)
boolean
banlistRouter(Hash peer, String reason, String reasonCode, String transport, long expireOn)
So that we may specify an expirationboolean
banlistRouterForever(Hash peer, String reason)
boolean
banlistRouterForever(Hash peer, String reason, String reasonCode)
Map<Hash,Banlist.Entry>
getEntries()
For BanlistRenderer in router console.int
getRouterCount()
boolean
isBanlisted(Hash peer)
boolean
isBanlisted(Hash peer, String transport)
boolean
isBanlistedForever(Hash peer)
void
renderStatusHTML(Writer out)
Deprecated.moved to router consolevoid
unbanlistRouter(Hash peer)
void
unbanlistRouter(Hash peer, String transport)
-
-
-
Field Detail
-
BANLIST_DURATION_MS
public static final long BANLIST_DURATION_MS
Don't make this too long as the failure may be transient due to connection limits.- See Also:
- Constant Field Values
-
BANLIST_DURATION_MAX
public static final long BANLIST_DURATION_MAX
- See Also:
- Constant Field Values
-
BANLIST_DURATION_PARTIAL
public static final long BANLIST_DURATION_PARTIAL
- See Also:
- Constant Field Values
-
BANLIST_DURATION_FOREVER
public static final long BANLIST_DURATION_FOREVER
- See Also:
- Constant Field Values
-
BANLIST_CLEANER_START_DELAY
public static final long BANLIST_CLEANER_START_DELAY
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
Banlist
public Banlist(RouterContext context)
-
-
Method Detail
-
getRouterCount
public int getRouterCount()
-
getEntries
public Map<Hash,Banlist.Entry> getEntries()
For BanlistRenderer in router console. Note - may contain expired entries.
-
banlistRouter
public boolean banlistRouter(Hash peer)
-
banlistRouter
public boolean banlistRouter(String reasonCode, Hash peer, String reason)
ick have to put the reasonCode in the front to avoid ambiguity
-
banlistRouterForever
public boolean banlistRouterForever(Hash peer, String reason, String reasonCode)
-
banlistRouter
public boolean banlistRouter(Hash peer, String reason, String transport, boolean forever)
-
banlistRouter
public boolean banlistRouter(Hash peer, String reason, String reasonCode, String transport, long expireOn)
So that we may specify an expiration- Parameters:
reason
- may be nullreasonCode
- may be nullexpireOn
- absolute time, not a durationtransport
- may be null- Since:
- 0.9.18
-
unbanlistRouter
public void unbanlistRouter(Hash peer)
-
isBanlisted
public boolean isBanlisted(Hash peer)
-
isBanlistedForever
public boolean isBanlistedForever(Hash peer)
-
renderStatusHTML
@Deprecated public void renderStatusHTML(Writer out) throws IOException
Deprecated.moved to router console- Throws:
IOException
-
-