summaryrefslogtreecommitdiff
path: root/src/OptionHandlerFactory.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-01-25 09:58:40 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-01-25 09:58:40 +0000
commit0742e3921f185613f98c2b31cd03182d8aa1d6f5 (patch)
treed658bfc69cb3cec3cf4cab9fb4ee89062bed9e24 /src/OptionHandlerFactory.cc
parent9505df51efaf83dd90818cb1c29487f286632f14 (diff)
2009-01-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added experimental built-in HTTP server. Currently, when a client accesses to the server, it responds with the current download progress. By default, it is disabled. To enable the server, give --enable-http-server option. To change the default port number for the server to listen to, use --http-server-listen-port option. The response HTML is very simple and refreshes it self each 1 second. Because of this refresh, you see flicker in normal web browser such as Firefox. I recommend to use console-based browser such as elinks, w3m. To connect to the server, run 'elinks http://localhost:6800/' while running aria2. Please replace port number '6800'(which is default) with your preference. * src/DownloadEngineFactory.cc * src/HttpHeader.cc * src/HttpHeader.h * src/HttpHeaderProcessor.cc * src/HttpHeaderProcessor.h * src/HttpListenCommand.cc * src/HttpListenCommand.h * src/HttpServer.cc * src/HttpServer.h * src/HttpServerCommand.cc * src/HttpServerCommand.h * src/HttpServerResponseCommand.cc * src/HttpServerResponseCommand.h * src/Makefile.am * src/OptionHandlerFactory.cc * src/Util.cc * src/Util.h * src/help_tags.h * src/option_processing.cc * src/prefs.cc * src/prefs.h * src/usage_text.h * test/HttpHeaderProcessorTest.cc * test/UtilTest.cc
Diffstat (limited to 'src/OptionHandlerFactory.cc')
-rw-r--r--src/OptionHandlerFactory.cc20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/OptionHandlerFactory.cc b/src/OptionHandlerFactory.cc
index f662b5b7..4db13b09 100644
--- a/src/OptionHandlerFactory.cc
+++ b/src/OptionHandlerFactory.cc
@@ -151,6 +151,14 @@ OptionHandlers OptionHandlerFactory::createOptionHandlers()
handlers.push_back(op);
}
{
+ SharedHandle<OptionHandler> op(new BooleanOptionHandler
+ (PREF_ENABLE_HTTP_SERVER,
+ TEXT_ENABLE_HTTP_SERVER,
+ V_FALSE));
+ op->addTag(TAG_EXPERIMENTAL);
+ handlers.push_back(op);
+ }
+ {
std::string params[] = {
#ifdef HAVE_EPOLL
V_EPOLL,
@@ -188,6 +196,15 @@ OptionHandlers OptionHandlerFactory::createOptionHandlers()
handlers.push_back(op);
}
{
+ SharedHandle<OptionHandler> op(new NumberOptionHandler
+ (PREF_HTTP_SERVER_LISTEN_PORT,
+ TEXT_HTTP_SERVER_LISTEN_PORT,
+ "6800",
+ 1024, UINT16_MAX));
+ op->addTag(TAG_EXPERIMENTAL);
+ handlers.push_back(op);
+ }
+ {
SharedHandle<OptionHandler> op(new DefaultOptionHandler
(PREF_INPUT_FILE,
TEXT_INPUT_FILE,
@@ -1013,7 +1030,7 @@ OptionHandlers OptionHandlerFactory::createOptionHandlers()
("help",
TEXT_HELP,
TAG_BASIC,
- StringFormat("%s,%s,%s,%s,%s,%s,%s,%s,all",
+ StringFormat("%s,%s,%s,%s,%s,%s,%s,%s,%s,all",
TAG_BASIC,
TAG_ADVANCED,
TAG_HTTP,
@@ -1021,6 +1038,7 @@ OptionHandlers OptionHandlerFactory::createOptionHandlers()
TAG_FTP,
TAG_METALINK,
TAG_BITTORRENT,
+ TAG_EXPERIMENTAL,
TAG_HELP).str()));
op->addTag(TAG_BASIC);
op->addTag(TAG_HELP);