net.i2p.router.update
Class UnsignedUpdateHandler

java.lang.Object
  extended by net.i2p.router.update.UnsignedUpdateHandler
All Implemented Interfaces:
Checker, Updater

 class UnsignedUpdateHandler
extends Object
implements Checker, Updater

Handles the request to update the router by firing off an EepGet call to download the latest unsigned zip file and displaying the status to anyone who asks.

After the download completes the signed update file is copied to the router directory, and if configured the router is restarted to complete the update process.


Constructor Summary
UnsignedUpdateHandler(RouterContext ctx, ConsoleUpdateManager mgr)
           
 
Method Summary
 UpdateTask check(UpdateType type, UpdateMethod method, String id, String currentVersion, long maxTime)
          Check for updates.
 List<URI> getUpdateSources()
           
 UpdateTask update(UpdateType type, UpdateMethod method, List<URI> updateSources, String id, String newVersion, long maxTime)
          Start a download and return a handle to the download task.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UnsignedUpdateHandler

public UnsignedUpdateHandler(RouterContext ctx,
                             ConsoleUpdateManager mgr)
Method Detail

getUpdateSources

public List<URI> getUpdateSources()
Returns:
null if none
Since:
0.9.4

check

public UpdateTask check(UpdateType type,
                        UpdateMethod method,
                        String id,
                        String currentVersion,
                        long maxTime)
Description copied from interface: Checker
Check for updates. Should not block. If any are found, call back to UpdateManager.notifyUpdateAvailable().

Specified by:
check in interface Checker
Parameters:
currentVersion - ignored, we use time stored in a property
id - plugin name or ignored
maxTime - how long you have
Returns:
active task or null if unable to check

update

public UpdateTask update(UpdateType type,
                         UpdateMethod method,
                         List<URI> updateSources,
                         String id,
                         String newVersion,
                         long maxTime)
Start a download and return a handle to the download task. Should not block.

Specified by:
update in interface Updater
Parameters:
id - plugin name or ignored
maxTime - how long you have
Returns:
active task or null if unable to download