net.i2p.router.networkdb.reseed
Class Reseeder

java.lang.Object
  extended by net.i2p.router.networkdb.reseed.Reseeder

public class Reseeder
extends Object

Moved from ReseedHandler in routerconsole. See ReseedChecker for additional comments. Handler to deal with reseed requests. This will reseed from the URLs specified below unless the I2P configuration property "i2p.reseedURL" is set. It always writes to ./netDb/, so don't mess with that. This is somewhat complicated by trying to log to three places - the console, the router log, and the wrapper log.


Field Summary
static String DEFAULT_SEED_URL
          NOTE - URLs that are in both the standard and SSL groups must use the same hostname, so the reseed process will not download from both.
static String DEFAULT_SSL_SEED_URL
           
static String PROP_DISABLE
           
static String PROP_PROXY_AUTH_ENABLE
           
static String PROP_PROXY_ENABLE
           
static String PROP_PROXY_HOST
           
static String PROP_PROXY_PASSWORD
           
static String PROP_PROXY_PORT
           
static String PROP_PROXY_USERNAME
          all these @since 0.8.9
static String PROP_RESEED_URL
           
static String PROP_SPROXY_AUTH_ENABLE
           
static String PROP_SPROXY_ENABLE
           
static String PROP_SPROXY_HOST
           
static String PROP_SPROXY_PASSWORD
           
static String PROP_SPROXY_PORT
           
static String PROP_SPROXY_USERNAME
           
static String PROP_SSL_DISABLE
           
static String PROP_SSL_REQUIRED
           
 
Constructor Summary
Reseeder(RouterContext ctx, ReseedChecker rc)
           
 
Method Summary
(package private)  void requestReseed()
          Start a reseed using the default reseed URLs.
(package private)  int requestReseed(InputStream in)
          Start a reseed from a zip or su3 input stream.
(package private)  void requestReseed(URL url)
          Start a reseed from a single zip or su3 URL only.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_SEED_URL

public static final String DEFAULT_SEED_URL
NOTE - URLs that are in both the standard and SSL groups must use the same hostname, so the reseed process will not download from both. Ports are supported as of 0.9.14. NOTE - Each seedURL must be a directory, it must end with a '/', it can't end with 'index.html', for example. Both because of how individual file URLs are constructed, and because SSLEepGet doesn't follow redirects.

See Also:
Constant Field Values

DEFAULT_SSL_SEED_URL

public static final String DEFAULT_SSL_SEED_URL
Since:
0.8.2
See Also:
Constant Field Values

PROP_PROXY_HOST

public static final String PROP_PROXY_HOST
See Also:
Constant Field Values

PROP_PROXY_PORT

public static final String PROP_PROXY_PORT
See Also:
Constant Field Values

PROP_PROXY_ENABLE

public static final String PROP_PROXY_ENABLE
Since:
0.8.2
See Also:
Constant Field Values

PROP_SSL_DISABLE

public static final String PROP_SSL_DISABLE
Since:
0.8.2
See Also:
Constant Field Values

PROP_SSL_REQUIRED

public static final String PROP_SSL_REQUIRED
Since:
0.8.2
See Also:
Constant Field Values

PROP_RESEED_URL

public static final String PROP_RESEED_URL
Since:
0.8.3
See Also:
Constant Field Values

PROP_PROXY_USERNAME

public static final String PROP_PROXY_USERNAME
all these @since 0.8.9

See Also:
Constant Field Values

PROP_PROXY_PASSWORD

public static final String PROP_PROXY_PASSWORD
See Also:
Constant Field Values

PROP_PROXY_AUTH_ENABLE

public static final String PROP_PROXY_AUTH_ENABLE
See Also:
Constant Field Values

PROP_SPROXY_HOST

public static final String PROP_SPROXY_HOST
See Also:
Constant Field Values

PROP_SPROXY_PORT

public static final String PROP_SPROXY_PORT
See Also:
Constant Field Values

PROP_SPROXY_ENABLE

public static final String PROP_SPROXY_ENABLE
See Also:
Constant Field Values

PROP_SPROXY_USERNAME

public static final String PROP_SPROXY_USERNAME
See Also:
Constant Field Values

PROP_SPROXY_PASSWORD

public static final String PROP_SPROXY_PASSWORD
See Also:
Constant Field Values

PROP_SPROXY_AUTH_ENABLE

public static final String PROP_SPROXY_AUTH_ENABLE
See Also:
Constant Field Values

PROP_DISABLE

public static final String PROP_DISABLE
Since:
0.9
See Also:
Constant Field Values
Constructor Detail

Reseeder

Reseeder(RouterContext ctx,
         ReseedChecker rc)
Method Detail

requestReseed

void requestReseed()
Start a reseed using the default reseed URLs. Supports su3 and directories. Threaded, nonblocking.


requestReseed

void requestReseed(URL url)
             throws IllegalArgumentException
Start a reseed from a single zip or su3 URL only. Threaded, nonblocking.

Throws:
IllegalArgumentException - if it doesn't end with zip or su3
Since:
0.9.19

requestReseed

int requestReseed(InputStream in)
            throws IOException
Start a reseed from a zip or su3 input stream. Blocking, inline. Should be fast. This will close the stream.

Returns:
number of valid routerinfos imported
Throws:
IOException - on most errors
Since:
0.9.19