net.i2p.router.update
Class PluginUpdateChecker
java.lang.Object
java.lang.Thread
net.i2p.util.I2PThread
net.i2p.util.I2PAppThread
net.i2p.router.update.UpdateRunner
net.i2p.router.update.PluginUpdateChecker
- All Implemented Interfaces:
- Runnable, UpdateTask, EepGet.StatusListener
class PluginUpdateChecker
- extends UpdateRunner
Check for an updated version of a plugin.
A plugin is a standard .sud file with a 40-byte signature,
a 16-byte version, and a .zip file.
So we get the current version and update URL for the installed plugin,
then fetch the first 56 bytes of the URL, extract the version,
and compare.
Moved from web/ and turned into an UpdateTask.
- Since:
- 0.7.12
Fields inherited from class net.i2p.router.update.UpdateRunner |
_baos, _context, _currentURI, _get, _isPartial, _isRunning, _log, _method, _mgr, _newVersion, _type, _updateFile, _urls, CONNECT_TIMEOUT, done, INACTIVITY_TIMEOUT, NOPROXY_INACTIVITY_TIMEOUT |
Method Summary |
void |
bytesTransferred(long alreadyTransferred,
int currentWrite,
long bytesTransferred,
long bytesRemaining,
String url)
subclasses should override |
String |
getID()
Valid for plugins |
void |
transferComplete(long alreadyTransferred,
long bytesTransferred,
long bytesRemaining,
String url,
String outputFile,
boolean notModified)
subclasses should override |
void |
transferFailed(String url,
long bytesTransferred,
long bytesRemaining,
int currentAttempt)
subclasses should override |
protected void |
update()
Loop through the entire list of update URLs. |
Methods inherited from class net.i2p.router.update.UpdateRunner |
_t, _t, attemptFailed, attempting, getMethod, getType, getURI, headerReceived, isRunning, linkify, run, shutdown, toString, updateStatus |
Methods inherited from class java.lang.Thread |
activeCount, checkAccess, clone, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, stop, stop, suspend, yield |
PluginUpdateChecker
public PluginUpdateChecker(RouterContext ctx,
ConsoleUpdateManager mgr,
List<URI> uris,
String appName,
String oldVersion)
getID
public String getID()
- Description copied from interface:
UpdateTask
- Valid for plugins
- Specified by:
getID
in interface UpdateTask
- Overrides:
getID
in class UpdateRunner
update
protected void update()
- Description copied from class:
UpdateRunner
- Loop through the entire list of update URLs.
For each one, first get the version from the first 56 bytes and see if
it is newer than what we are running now.
If it is, get the whole thing.
- Overrides:
update
in class UpdateRunner
bytesTransferred
public void bytesTransferred(long alreadyTransferred,
int currentWrite,
long bytesTransferred,
long bytesRemaining,
String url)
- Description copied from class:
UpdateRunner
- subclasses should override
- Specified by:
bytesTransferred
in interface EepGet.StatusListener
- Overrides:
bytesTransferred
in class UpdateRunner
transferComplete
public void transferComplete(long alreadyTransferred,
long bytesTransferred,
long bytesRemaining,
String url,
String outputFile,
boolean notModified)
- Description copied from class:
UpdateRunner
- subclasses should override
- Specified by:
transferComplete
in interface EepGet.StatusListener
- Overrides:
transferComplete
in class UpdateRunner
transferFailed
public void transferFailed(String url,
long bytesTransferred,
long bytesRemaining,
int currentAttempt)
- Description copied from class:
UpdateRunner
- subclasses should override
- Specified by:
transferFailed
in interface EepGet.StatusListener
- Overrides:
transferFailed
in class UpdateRunner