Commit Graph

74 Commits

Author SHA1 Message Date
zzz ef3a12f01a * UpdateManager:
- Convert to RouterApp and remove update hooks from context
     (ticket #1185)
2014-02-07 15:40:23 +00:00
zzz 0c326f989e Remove outproxy hook vestiges in context, history for prop, -3 2014-01-25 18:23:46 +00:00
zzz 0bc6c23ac9 Remove outproxy hook in context, use ClientAppManager:
- Add clientAppManager() to I2PAppContext so it can be used there
  - Add routerAppManager() to RouterContext for convenience inside router

Start of SSL support in I2PTunnelHTTPClient
  - Add initialSocketData support back to I2PTunnelOutproxyRunner
  - Works for orchid (and in-net?)
  - TODO Doesn't work for in-net proxy
  - Need separate config for SSL proxy
2014-01-06 13:57:45 +00:00
zzz d054e12952 New interface and context hooks for in-jvm outproxy
Support in HTTP client proxy
All preliminary, maybe better to use ClientAppManager?
2014-01-05 00:52:00 +00:00
str4d ed2feb3ff7 Core: findbugs 2013-11-27 23:22:49 +00:00
str4d 15bf94b479 Core: type arguments 2013-11-22 09:34:42 +00:00
str4d 89dcceefee Core: type arguments, unused imports 2013-11-20 04:02:28 +00:00
zzz 6e19854e4c - NPE fix on signed udpates
- More work on snark updater
- Clean up imports
2012-10-21 13:34:23 +00:00
zzz 0b4401e64b - Lots of fixes for notifying when updates and checks are complete
- Fixes for NewsHelper stored timestamps
- Add getProperty(String, long) to context for sanity
- New methods and types
- Logging improvements
- Add failsafe TaskCleaner
2012-10-18 14:28:14 +00:00
zzz 4db4010abf propagate from branch 'i2p.i2p' (head 2da3b585b42d058e25909bc303d72277ae2463b5)
to branch 'i2p.i2p.zzz.update' (head ebbad994215dc2822e9a1776399864ed77a0e5a0)
2012-10-14 22:42:00 +00:00
zzz 3ceb83d40e * I2PAppContext: Improved synching in constructor 2012-10-07 20:48:25 +00:00
zzz e3133d88d7 javadoc 2012-09-28 18:42:17 +00:00
zzz 211782fae4 * Context: Make files final 2012-09-25 19:19:27 +00:00
zzz 20279d1597 propagate from branch 'i2p.i2p' (head 52d5a19210a344e0de43f6fe4d898d34f6c41829)
to branch 'i2p.i2p.zzz.update' (head d88c6abf9b4988ba892e435594cd74917ab9ab7f)
2012-09-25 15:04:49 +00:00
zzz 489f43529c booleanValue() -> parseBoolean() 2012-09-07 20:13:49 +00:00
zzz 6bfd916fef SimpleTimer (ticket #653):
- Move all remaining uses to SimpleTimer2
    - Deprecate
2012-09-01 13:14:15 +00:00
zzz 1ab8200c7f * Clone System properties before iterating to avoid
ConcurrentModificationException (ticket #680)
2012-08-06 14:45:37 +00:00
zzz e62b76d2cc Big refactor of the router console update subsystem, in preparation for
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.
2012-06-18 22:09:45 +00:00
zzz bafef846d9 * SimpleScheduler, SimpleTimer, SimpleTimer2: Replace static instances
with I2PAppContext-rooted references
2012-03-22 19:53:05 +00:00
zzz ec460794eb * PortMapper: New service for registering application ports in the context 2011-12-11 13:27:52 +00:00
zzz 579af7e3ad build fix 2011-11-16 13:29:26 +00:00
zzz ff499844a2 * Router: Move router.ping file from temp directory to config directory 2011-11-16 00:56:45 +00:00
zzz fd1c8c45a8 cleanup 2011-09-24 21:44:51 +00:00
zzz 3a1cd51bc7 split up big lock to avoid deadlocks 2011-07-28 18:22:31 +00:00
zzz dd4906258d javadoc 2011-07-08 13:47:49 +00:00
zzz 43044586d1 * AppContext: Add hasWrapper() method
* Shutdown:
    - Clear more resources in peer manager, netdb, stat manager,
      session key manager, naming service, tunnel dispatcher,
      OCMOSJ (result of testing with jvisualvm)
    - Don't call wrapper on shutdown (starting two threads) if we
      were started with runplain
2011-07-03 13:46:29 +00:00
zzz 9ad8f35bca * Shutdown:
- Kill the global app context
    - Recognize multi-router case
    - Fix RandomIterator, YKGenerator, DHBuilder, NTCPConnection
      hanging on to old context -
      probably other offenders not yet found
    - Fix DHBuilder thread not stopping
2011-06-17 18:37:02 +00:00
zzz 3c88c854bf more cleanup at shutdown 2011-06-14 19:27:46 +00:00
zzz 94af6550fa HMAC256 is used by Syndie 2011-06-02 13:30:33 +00:00
zzz 54fdfd823b - Drop deprecated NamingServices
- Add caching and b32 support to DummyNamingService
    - BlockfileNamingService Cleanups
2011-02-08 03:29:18 +00:00
zzz 97f93c64e6 Fix context properties initialization; history for test4 prop, -1 2011-01-31 15:44:00 +00:00
zzz e721ddd3a4 propagate from branch 'i2p.i2p.zzz.test4' (head 592b7d2b980e8cba19167fa064f25251296ed8bb)
to branch 'i2p.i2p' (head 0ba672eaca7076092389d2277dba231fdd34423b)
2011-01-31 13:42:36 +00:00
zzz 8da1e90226 * RouterContext: Clean up clock overrides
* PeerManager: Make calculators static, take out of router context
2011-01-19 16:40:48 +00:00
mathiasdm b963e2a855 propagate from branch 'i2p.i2p' (head 1b82a3bfd792b71321bcbd8f3b8344664db2dc45)
to branch 'i2p.i2p.mathiasdm.desktopgui' (head 4e485a19a83a3e30425e1b1a03836f35fa4ebb50)
2011-01-10 06:41:39 +00:00
mathiasdm 7710b22cfd Moved I2PProperties callback to the RouterContext. 2011-01-07 17:09:27 +00:00
zzz 087c7b86de findbugs core,client,crypto,data,stat,i2np 2011-01-07 00:15:35 +00:00
mathiasdm 2a6c763c31 Added support for callbacks when changes in I2PAppContext properties occur. 2011-01-03 18:37:29 +00:00
zzz 1a3b0d3812 * I2PAppContext: New getProperties() method
* i2ptunnel:
      - Use context properties as defaults
2011-01-03 14:26:22 +00:00
zzz f194f78953 use base 64 for temp dir name 2010-12-12 22:09:04 +00:00
zzz 19c6760ea7 * I2CP: Change from the internal pseudo-socket that was
implemented in 0.7.9 to an internal Queue that directly
      passes I2CPMessage objects. For in-JVM clients,
      this eliminates two writer threads per client and
      avoids the serialization/deserialization of I2CP messages.
2010-12-01 18:57:05 +00:00
zzz e940f51599 * SecureFile: New class, catch places that were missed,
add i2p.insecureFiles option to disable (default false)
2010-11-19 00:40:33 +00:00
zzz 2d601099f3 propagate from branch 'i2p.i2p.zzz.test' (head 128a31611abc6a88e58133f3bf6a577fe6dd5b1c)
to branch 'i2p.i2p.zzz.test4' (head fa9a871892517271eb2531b433fe80a2a713be9c)
2010-10-05 13:06:16 +00:00
zzz 2244142bd8 javadoc, comment out some main()s 2010-08-14 18:22:46 +00:00
zzz 4323036992 javadocs 2010-08-10 16:17:09 +00:00
zzz a1524241cb Set permissions on directories and files when they are created 2010-07-06 15:22:48 +00:00
zzz 9eab44128a * Random: Remove and deprecate some old classses 2010-03-08 00:48:56 +00:00
zzz ca9f174171 * Context: Add boolean getProperty methods 2010-03-02 22:52:26 +00:00
zzz 08e54c515e add isRouterContext() method 2009-12-19 16:37:44 +00:00
zzz c10ea84ade * NamingServices
- Move default reverseLookup to base class
      - Deprecate unused services
2009-11-28 14:37:07 +00:00
zzz 62a3da2fa6 javadoc updates for SKM changes 2009-08-30 16:04:28 +00:00