- Oct 17, 2015
-
-
zzz authored
-
- Sep 19, 2015
-
-
zzz authored
-
- May 15, 2015
-
-
dg2-new authored
-
- May 09, 2015
-
-
zzz authored
-
- Apr 24, 2015
-
-
zzz authored
Covers router, unsigned router, plugin, and news updates
-
- Dec 05, 2014
-
-
zzz authored
Don't count Jetty RolloverFileOutputStream in the thread group, to fix restart of a plugin
-
- Nov 13, 2014
-
-
zzz authored
- Fix bug that left server acceptor thread running after close - Add destroy() methods to release all resources when closing a tunnel for good, particularly the streaming timer threads - Use COWAL to prevent concurrency problems - Javadocs Streaming: - Don't return null from accept() any more; actually throw ConnectException as the javadocs have always specified - Throw ConnectException from accept() if interrupted; previously caught and ignored - Throw exceptions from ConnectionHandler.accept(), not higher up - Close ServerSocket when ConnectionManager is shut down - Synchronize setActive(), clear queue when starting to accept, better handling of calls that don't change state - Javadocs ConfigClientsHelper: Call isPluginRunning() less often PluginStarter: Simplify detection of active threads Above changes mostly in support of zzzot plugin implementing ClientApp and being able to shut down completely so there are no threads in its thread group, so /configclients will all show status as stopped. Previously, the I2PTunnelServer acceptor thread and one or more streaming timer threads would remain.
-
- Nov 12, 2014
-
-
zzz authored
-
- Jul 19, 2014
-
-
str4d authored
-
- Apr 30, 2014
-
-
zzz authored
-
- Mar 23, 2014
-
-
str4d authored
-
- Feb 07, 2014
-
-
zzz authored
- Convert to RouterApp and remove update hooks from context (ticket #1185)
-
- Nov 24, 2013
-
-
str4d authored
-
- Nov 21, 2013
-
-
str4d authored
-
- Nov 16, 2013
-
-
zzz authored
- volatile -> atomic - unused code and fields - closing streams - hashCode / equals - known non-null - Number.valueOf - new String Still avoiding SAM, BOB, SusiMail
-
- Jun 30, 2013
-
-
zzz authored
-
- May 26, 2013
-
-
zzz authored
- Add support for requesting an encrypted reply * NetDB: - Add support for encrypted DatabaseSearchReplyMessage and DatabaseStoreMessage in response to a DatabaseLookupMessage * PRNG: Cleanups using Collections.singletonMap() * Router utils: New RemovableSingletonSet * TransientSessionKeyManager: - Support variable expiration for inbound tag sets - Several efficiency improvements * VersionComparator: Add static method, use most places
-
- Apr 26, 2013
-
-
zzz authored
start delayed clients from SimpleTimer2 instead of Job queue (ticket #670)
-
- Apr 19, 2013
-
-
zzz authored
- Notify manager about all available update methods at once, so the priority system works and it doesn't only update via HTTP - Start router update download at startup if available - Only check plugins when core version increases, not decreases, so we don't update plugins when downgrading - Limit length of URL shown on summary bar
-
- Nov 21, 2012
-
-
zzz authored
Convert LocaleWebAppHandler from extending WebAppContext to extending HandlerWrapper, since handle() is now final in WebAppContext. Untested.
-
- Oct 23, 2012
-
-
zzz authored
- Remove unused UpdateTypes - Only try applicable updaters when updating - Javadoc fixes
-
- Oct 13, 2012
-
-
zzz authored
-
- Sep 28, 2012
-
-
zzz authored
-
- Jun 18, 2012
-
-
zzz authored
implementing out-of-console updaters like i2psnark. - Add new update interfaces in net.i2p.update - All update implementations moved to routerconsole update/ - Implement an UpdateManager that registers with the RouterContext - UpdateManager handles multiple types of things to update (router, plugins, news, ...) and methods of updating (HTTP, ...) - UpdateManager maintains list of installed, downloaded, and available versions of everything - Define Updaters that can check for a new version and/or download an item - Individual Updaters register with the UpdateManager obtained from I2PAppContext, identifying the type of update item and update method they can handle. - Updaters need only core libs, no router.jar or routerconsole access required. - All checks and updates are initiated via the UpdateManager. - All status on checks and updates in-progress or completed are obtained from the UpdateManager. No more use of System properties to broadcast update state. - All update and checker tasks are intantiated on demand and threaded; no more static references left over. - Split out the Runners and Checkers from the Handlers and make the inheritance more sane. - No more permanent NewsFetcher thread; run on the SimpleScheduler queue and thread a checker task only to fetch the news. - No more static NewsFetcher instance in routerconsole. All helper methods that are still required are moved to NewsHelper. The UpdateManager implements the policy for when to check and download. All requests go through the UpdateManager. For each update type, there's several parts: - The xxxUpdateHandler implements the Updater - The xxxUpdateChecker implements the UpdateTask for checking - The xxxUpdateRunner implements the UpdateTask for downloading New and moved classes: web/ update/ ---- ------- new ConsoleUpdateManager.java new PluginUpdateChecker.java from PluginUpdateChecker PluginUpdateChecker -> PluginUpdateHandler.java PluginUpdateHandler.java -> PluginUpdateRunner new UnsignedUpdateHandler.java UnsignedUpdateHandler -> UnsignedUpdateRunner.java new UnsignedUpdateChecker from NewsFetcher UpdateHandler.java remains new UpdateHandler.java new UpdateRunner.java from UpdateHandler move NewsHandler from NewsFetcher new NewsFetcher new NewsTimerTask new DummyHandler Initial checkin. Unfinished, untested, unpolished.
-
- Mar 19, 2012
-
-
sponge authored
-
- Mar 15, 2012
-
-
sponge authored
-
- Mar 13, 2012
-
-
sponge authored
-
- Jan 23, 2012
-
-
zzz authored
-
- Jan 18, 2012
-
-
zzz authored
to eliminate races with ReadConfigJob
-
- Jan 15, 2012
- Dec 24, 2011
-
-
zzz authored
- Enforce min and max Jetty versions at plugin installation - Enforce I2P, Java, and Jetty versions at plugin startup too
-
- Dec 23, 2011
-
-
zzz authored
Jetty 6 package. - Add several jars from the Jetty 6 distribution - Update jetty.xml - Add context XML files - Update WorkingDir to migrate the content XML files - Update RouterConsoleRunner and LocaleWebAppHandler - Remove all old Jetty 5.1.15 local mods; this will break Seedless using a custom Server() constructor - Update I2PRequestLog to be a mod of NCSARequestLog from 6.1.26 - Put I2PRequestLog in its own jar - Copy MultiPartRequest and other required classes from Jetty 5.1.15 and add it to susimail, as the replacement MultiPartFilter in Jetty 6 is difficult to migrate to, and does not support content-type - Update i2psnark for Jetty 6 - Disable i2psnark RunStandalone, unused and instantiated Jetty 5 - Fix up all webapp build.xml to reference new jars Not yet working: Plugin/webapp run detection and stopping, eepsite CGI Not well tested: Plugins, classpaths, webapps
-
- Apr 10, 2011
-
- Nov 27, 2010
-
-
sponge authored
-
- Nov 24, 2010
-
-
sponge authored
The only defecency is that if one is running, that it considers the entire pliugin to be running. I'm not sure if that is a good thing or a bad thing, but the other code checks threads that way.
-
- Jul 06, 2010
-
-
zzz authored
-
- May 10, 2010
-
-
sponge authored
Loading a class would be one of them! So we do a quick check first, If it bombs out, we delay and try again. If it bombs after that, then we throw the ClassNotFoundException.
-
- May 05, 2010
-
-
zzz authored
- Set classpath for specific client only, not for the whole JVM - Use ConfigDir() not AppDir()
-
- Apr 23, 2010
-
-
zzz authored
-