diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2007-10-11 16:58:24 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2007-10-11 16:58:24 +0000 |
| commit | 048a2cf59737f761876e81a77e8d064c45c752d7 (patch) | |
| tree | 65c9d5498aafe6a8c8e640ddfcc43c7013504d0d /src/PeerAbstractCommand.cc | |
| parent | e26bbbb9eee140ba24402fe872a752b42f0077de (diff) | |
2007-10-12 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Implemented BitTorrent/http/ftp integrated download.
I've rewritten lots of files and now some headers have forward
class declarations to reduce compile time.
The implementation is extremely alpha stage, I recommend to use this
for testing purpose only.
Diffstat (limited to 'src/PeerAbstractCommand.cc')
| -rw-r--r-- | src/PeerAbstractCommand.cc | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/src/PeerAbstractCommand.cc b/src/PeerAbstractCommand.cc index 86c44338..4454a519 100644 --- a/src/PeerAbstractCommand.cc +++ b/src/PeerAbstractCommand.cc @@ -33,33 +33,34 @@ */ /* copyright --> */ #include "PeerAbstractCommand.h" +#include "Peer.h" +#include "DownloadEngine.h" +#include "Option.h" #include "DlAbortEx.h" #include "DlRetryEx.h" #include "Util.h" #include "message.h" #include "prefs.h" -PeerAbstractCommand::PeerAbstractCommand(int32_t cuid, const PeerHandle& peer, - TorrentDownloadEngine* e, - const BtContextHandle& btContext, +PeerAbstractCommand::PeerAbstractCommand(int32_t cuid, + const PeerHandle& peer, + DownloadEngine* e, const SocketHandle& s) - :BtContextAwareCommand(cuid, btContext), e(e), socket(s), peer(peer), + :Command(cuid), e(e), socket(s), peer(peer), checkSocketIsReadable(false), checkSocketIsWritable(false), uploadLimitCheck(false), uploadLimit(0), noCheck(false) { setReadCheckSocket(socket); timeout = e->option->getAsInt(PREF_BT_TIMEOUT); - btRuntime->increaseConnections(); } PeerAbstractCommand::~PeerAbstractCommand() { disableReadCheckSocket(); disableWriteCheckSocket(); - btRuntime->decreaseConnections(); } bool PeerAbstractCommand::execute() { - if(btRuntime->isHalt()) { + if(exitBeforeExecute()) { peer->resetStatus(); return true; } @@ -96,10 +97,6 @@ bool PeerAbstractCommand::prepareForRetry(int32_t wait) { return true; } -void PeerAbstractCommand::onAbort(Exception* ex) { - peerStorage->returnPeer(peer); -} - void PeerAbstractCommand::disableReadCheckSocket() { if(checkSocketIsReadable) { e->deleteSocketForReadCheck(readCheckTarget, this); |
