Commit Graph

1537 Commits

Author SHA1 Message Date
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
str4d
4f6fb6993d Pass requestURI through to xhr1.jsp so forms work and correct summary bar is chosen 2012-06-12 00:12:51 +00:00
str4d
fa3e3e0764 Enforcing minimum refresh rate better, and reducing it to 3 seconds
This does mean that the iframe don't-refresh state (= refresh rate of 0 seconds)
doesn't hold if the page is changed (in fact, the refresh rate becomes the
minimum) - so maybe better to have a different config var for that?
2012-06-11 23:33:33 +00:00
str4d
296ddbe930 Removed some unnecessary <hr>s 2012-06-11 05:32:53 +00:00
str4d
e20f2d0bf6 Summary bar for /home defaults to reduced preset, everywhere else to full preset 2012-06-11 05:29:27 +00:00
str4d
cc61f4eb61 Some changes to enable per-page sidebar configuration from the config file 2012-06-09 13:48:26 +00:00
str4d
0a61b8052c propagate from branch 'i2p.i2p' (head 44d553e8644f01d5e5af3c3145210bdb0a923d3c)
to branch 'i2p.i2p.str4d.fux' (head 51022349e906bd393602b558861bcaaac4d56c89)
2012-06-09 06:11:40 +00:00
str4d
cbcbfea6e8 Shorten /i2ptunnelmanager to /i2ptunnelmgr (/i2ptunnel is surplanted by /i2ptunnel/) 2012-06-09 06:08:44 +00:00
zzz
b304393bc3 * netdb.jsp: Don't show our info on summary page since there's a tab for it now 2012-06-08 16:10:26 +00:00
str4d
f6304ccd4d Commented out "All times are UTC" blurb because all graphs are labeled UTC 2012-06-08 12:58:50 +00:00
str4d
9d241cc0d4 Added tooltips to the various sections of the summary bar 2012-06-07 14:14:13 +00:00
str4d
a46ca210f5 Added some spaces to notification messages on /configsidebar 2012-06-07 11:11:37 +00:00
str4d
b00fbfa23d Centre box for order of new section, and add default value 2012-06-07 10:26:44 +00:00
str4d
3a75f8d7d1 Modifying section addition to show an option list
Also adding form handler class that I forgot to commit earlier.
2012-06-07 04:42:52 +00:00
str4d
84344b6789 Added a config page for summary bar 2012-06-07 02:51:22 +00:00
str4d
b75d28fd0d Added /i2ptunnelmanager which wraps /i2ptunnel/ in an IFrame
/i2ptunnelmanager redirects to /i2ptunnel/ if the browser doesn't support IFrames.
2012-06-05 15:19:40 +00:00
str4d
a8424e59b0 propagate from branch 'i2p.i2p' (head ab5f37b28e499d49e108e8e6869164d107c7049e)
to branch 'i2p.i2p.str4d.fux' (head fb4425cd3e38762f211f73d91c7a173972e7145c)
2012-06-05 13:38:02 +00:00
str4d
420bf851b5 Added Ajax script to every routerconsole page that includes summary.jsi 2012-06-05 13:37:10 +00:00
str4d
83c8233812 Insert routerconsole.summaryRefresh config value into Ajax script
This way, both Ajax and IFrame get their refresh time from config (though
IFrame one can still be modified live).
2012-06-05 13:00:40 +00:00
str4d
52a3860717 Rearrange summary bar code to consolidate Ajax and IFrame, and /home and /console
Now, Ajax will be used first, and will fall back to IFrame if JS is disabled,
and a separate page if on a text or mobile browser.
Also, /home and /console (and everywhere) now all have the same summary bar
content, which currently defaults to the original full listing.
2012-06-05 12:44:17 +00:00
str4d
531c6c0f4c Implementation of customisable summary bar via routerconsole.summaryBar property
The initial attempt using mapping of strings to methods is shorter and neater,
but also doesn't work so is commented out.
2012-06-05 07:36:24 +00:00
str4d
5699b4515b Preparations for making the summary bar customisable 2012-06-05 02:12:30 +00:00
str4d
ceedc9c645 Moved rendering of news headings into SummaryBarRenderer
An instance of NewsHelper needs to be passed in to get output.
2012-06-04 23:46:03 +00:00
str4d
9333cd56f9 Moved calls to external renderers into separate methods to match the rest 2012-06-04 13:28:52 +00:00
str4d
910001e3a1 Split HTML rendering of summary bar into separate methods
This solidifies the summary bar design pattern of modular sections separated by
<hr>s which in future could be reordered or hidden without affecting the theme.
2012-06-04 13:10:12 +00:00
kytv
0abbe45a6d correct flag country (I copied the line and changed all but the flag) 2012-06-03 15:02:27 +00:00
kytv
403d6a322a Italian language updates from tx & debconf updates
-10
2012-06-03 14:34:39 +00:00
kytv
4ec20ef796 typo fix (*facepalm*) 2012-06-03 14:09:41 +00:00
kytv
3b7eaa107e s/$ENGLISHNAME/$NATIVENAME/g 2012-06-03 13:52:27 +00:00
kytv
8375e9129d enable Hungarian in another spot 2012-06-03 13:46:33 +00:00
kytv
53fbece6b5 Hungarian language translation by AdminLMH from TX
Thanks!
2012-06-03 13:46:07 +00:00
str4d
69d909d3eb Added <hr>s to separate the various logs on /logs 2012-06-03 00:22:03 +00:00
zzz
96575e61f2 * Console: Tab the netdb and profile pages 2012-06-01 13:30:38 +00:00
zzz
e1823ece68 whitespace fix 2012-06-01 13:27:01 +00:00
str4d
b23414eab1 Reordered /home summarybar, added <hr> after update download button 2012-06-01 01:21:57 +00:00
str4d
ef06fc758c Show news headings in the /home sidebar when the main news div is hidden
Note: this now refreshes along with the rest of the sidebar, so the news.xml
file is read once every 15s - it may be better to cache the headings somewhere,
though it's debatable whether reading the cache file is better than reading the
news.xml file...
2012-05-31 09:30:30 +00:00
zzz
f14ff31a20 * Timestamper:
- Move from core to router, leave stub in core
     so it doesn't break compatibility. This removes a
     thread in app context and prevents any app context from
     running NTP; external clients must use the time
     received from the router.
   - Increase query interval
2012-05-30 20:03:30 +00:00
zzz
1427c502c0 Reduce log level to warn for normal EofException when generating graphs 2012-05-30 14:09:16 +00:00
kytv
df3771e791 merge of '60890b0ffbf109b297bd6dd66a28d8179322331a'
and '7e63908db8b78229f8f0c963050b062ce0f6dd96'
2012-05-25 21:09:25 +00:00
kytv
464279ca1c German, Spanish, and Swedish translations from Transifex 2012-05-25 12:40:12 +00:00
kytv
6014de9cd5 Italian translation updates from Transifex (thanks colombo-bt!) 2012-05-25 11:05:22 +00:00
str4d
10bd1343c3 Changes to structure of /home.jsp to bring it back in line with /console.jsp 2012-05-25 00:43:29 +00:00
zzz
501f2f85d5 * jobs.jsp: Add more queue diagnostics 2012-05-23 16:37:43 +00:00
zzz
c2e39687e6 * RoutingKeyModifier: Several changes to ensure the routing key
is correctly changed just after midnight.
2012-05-20 18:20:48 +00:00
zzz
c4f9485e13 * Console: Add full file path to thread dump message 2012-05-20 18:12:41 +00:00
zzz
3685bf04d0 add X-Frame-Options to console headers 2012-05-13 13:05:17 +00:00
kytv
06d0412558 Spanish & German translation updates from transifex
(These were sent to transifex too late to make it into 0.9)
2012-05-05 20:30:08 +00:00
kytv
ffde067c5e s/Reunion/Réunion/ 2012-05-05 16:00:37 +00:00
hiddenz
7af65f4346 Update russian translation 2012-04-29 17:31:24 +00:00
kytv
3ccc102412 German, Spanish, and Swedish translation updates from Transifex 2012-04-26 18:19:07 +00:00