net.i2p.router
Class Banlist

java.lang.Object
  extended by 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
static class Banlist.Entry
           
 
Field Summary
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
Banlist(RouterContext context)
           
 
Method Summary
 boolean 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(String reasonCode, Hash peer, String reason)
          ick have to put the reasonCode in the front to avoid ambiguity
 boolean 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 console
 void unbanlistRouter(Hash peer)
           
 void unbanlistRouter(Hash peer, String transport)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

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(Hash peer,
                             String reason)

banlistRouter

public boolean banlistRouter(String reasonCode,
                             Hash peer,
                             String reason)
ick have to put the reasonCode in the front to avoid ambiguity


banlistRouter

public boolean banlistRouter(Hash peer,
                             String reason,
                             String transport)

banlistRouterForever

public boolean banlistRouterForever(Hash peer,
                                    String reason)

banlistRouterForever

public boolean banlistRouterForever(Hash peer,
                                    String reason,
                                    String reasonCode)

banlistRouter

public boolean banlistRouter(Hash peer,
                             String reason,
                             String transport,
                             boolean forever)

unbanlistRouter

public void unbanlistRouter(Hash peer)

unbanlistRouter

public void unbanlistRouter(Hash peer,
                            String transport)

isBanlisted

public boolean isBanlisted(Hash peer)

isBanlisted

public boolean isBanlisted(Hash peer,
                           String transport)

isBanlistedForever

public boolean isBanlistedForever(Hash peer)

renderStatusHTML

public void renderStatusHTML(Writer out)
                      throws IOException
Deprecated. moved to router console

Throws:
IOException