summaryrefslogtreecommitdiff
path: root/src/main.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2006-04-17 16:17:20 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2006-04-17 16:17:20 +0000
commit39276dcb00b33372e1ac5fbd0de2d60c733aeb60 (patch)
treedd69b00525b60066b9e79b9924ad5c5028b65b4e /src/main.cc
parentdcc225a145aa784c85472e9618cd5fdf96a271b6 (diff)
To add LogFactory which creates singleton logger:
* src/LogFactory.h: New class. * src/LogFactory.cc: New class. * src/Command.h (logger): New variable. (Constructor): Use LogFactory. * src/AbstractCommand.cc: Use Command::logger * src/PeerConnection.cc (Constructor): Deleted the argument logger. Use LogFactory. * src/SegmentSplitter.h : Made logger protected. * src/SegmentSplitter.cc (Constructor): Use LogFactory. * src/SegmentMan.cc (Constructor): Use LogFactory. * src/DownloadEngine.h : Made logger protected. * src/DownloadEngine.cc (Constructor): Use LogFactory. * src/PeerInteractionCommand.cc : Use Command::logger. * src/HttpResponseCommand.cc : Use Command::logger. * src/SegmentMan.h : Made logger private. * src/TorrentMan.h : Made logger private. * src/TorrentMan.cc : Use LogFactory. * src/FtpNegotiateCommand.cc : Use Command::logger. * src/HttpConnection.h (Constructor): Deleted the argument logger. * src/HttpConnection.cc (Constructor): Deleted the argument logger. Use LogFactory. * src/FtpConnection.h (Constructor): Deleted the argument logger. * src/FtpConnection.cc (Constructor): Deleted the argument logger. Use LogFactory. * src/DownloadCommand.cc : Use Command::logger. * src/PeerAbstractCommand.cc : Use Command::logger. * src/PeerListenCommand.cc : Use Command::logger. * src/PeerInitiateConnectionCommand.cc : Use Command::logger. * src/HttpInitiateConnectionCommand.cc : Use Command::logger. * src/FtpInitiateConnectionCommand.cc : Use Command::logger. * src/TrackerWatcherCommand.cc : Use Command::logger. * src/TrackerUpdateCommand.cc : Use Command::logger. * src/TrackerDownloadCommand.cc : Use Command::logger. * src/RequestSlotMan.cc (Constructor): Deleted the argument logger. Use LogFactory. * src/SendMessageQueue.h (Constructor): Deleted the argument logger. * src/SendMessageQueue.cc (Constructor): Deleted the argument logger. Use LogFactory. * src/main.cc (main): Use LogFactory. * src/DiskAdaptor.h (logger): New variable. * src/DiskAdaptor.cc (Constructor): Use LogFactory. * src/CopyDiskAdaptor.cc (fixFilename): Added a log message.
Diffstat (limited to 'src/main.cc')
-rw-r--r--src/main.cc20
1 files changed, 5 insertions, 15 deletions
diff --git a/src/main.cc b/src/main.cc
index 69fab73a..d20f56e2 100644
--- a/src/main.cc
+++ b/src/main.cc
@@ -25,7 +25,7 @@
#include "SegmentMan.h"
#include "TorrentMan.h"
#include "SplitSlowestSegmentSplitter.h"
-#include "SimpleLogger.h"
+#include "LogFactory.h"
#include "common.h"
#include "DefaultDiskWriter.h"
#include "Util.h"
@@ -533,14 +533,12 @@ int main(int argc, char* argv[]) {
gnutls_global_init();
#endif // HAVE_LIBGNUTLS
srandom(time(NULL));
- SimpleLogger* logger;
if(stdoutLog) {
- logger = new SimpleLogger(stdout);
+ LogFactory::setLogFile("/dev/stdout");
} else if(logfile.size()) {
- logger = new SimpleLogger(logfile);
- } else {
- logger = new SimpleLogger("/dev/null");
+ LogFactory::setLogFile(logfile);
}
+
SegmentSplitter* splitter = new SplitSlowestSegmentSplitter();
splitter->setMinSegmentSize(op->getAsLLInt(PREF_MIN_SEGMENT_SIZE));
@@ -552,15 +550,12 @@ int main(int argc, char* argv[]) {
setSignalHander(SIGINT, handler);
setSignalHander(SIGTERM, handler);
- splitter->logger = logger;
e = new ConsoleDownloadEngine();
- e->logger = logger;
e->option = op;
e->diskWriter = new DefaultDiskWriter();
e->segmentMan = new SegmentMan();
e->segmentMan->dir = dir;
e->segmentMan->ufilename = ufilename;
- e->segmentMan->logger = logger;
e->segmentMan->option = op;
e->segmentMan->splitter = splitter;
@@ -601,16 +596,13 @@ int main(int argc, char* argv[]) {
req->isTorrent = true;
req->setTrackerEvent(Request::STARTED);
te = new TorrentConsoleDownloadEngine();
- te->logger = logger;
te->option = op;
te->diskWriter = new DefaultDiskWriter();
te->segmentMan = new SegmentMan();
- te->segmentMan->logger = logger;
te->segmentMan->option = op;
te->segmentMan->splitter = splitter;
te->torrentMan = new TorrentMan();
te->torrentMan->setStoreDir(dir);
- te->torrentMan->logger = logger;
te->torrentMan->option = op;
string targetTorrentFile = torrentFile.empty() ?
downloadedTorrentFile : torrentFile;
@@ -662,11 +654,9 @@ int main(int argc, char* argv[]) {
exit(1);
}
}
-
- delete(logger);
delete(op);
delete(splitter);
-
+ delete(LogFactory::getInstance());
#ifdef HAVE_LIBGNUTLS
gnutls_global_deinit();
#endif // HAVE_LIBGNUTLS