summaryrefslogtreecommitdiff
path: root/src/AbstractCommand.h
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-06-09 12:43:44 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2010-06-09 12:43:44 +0000
commit970e7f95a65b1b8940c9131a76372b7d7abffdf1 (patch)
treec3a9b7b51a97a01160a7b37989406b78041d9115 /src/AbstractCommand.h
parent9afc36152a1ce428243a3ace608d0508716a2efb (diff)
2010-06-09 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Made protected member variable private. Added accessor funcs. * src/AbstractCommand.cc * src/AbstractCommand.h * src/AbstractProxyRequestCommand.cc * src/AbstractProxyRequestCommand.h * src/AbstractProxyResponseCommand.cc * src/AbstractProxyResponseCommand.h * src/CreateRequestCommand.cc * src/DownloadCommand.cc * src/DownloadCommand.h * src/FtpDownloadCommand.cc * src/FtpDownloadCommand.h * src/FtpFinishDownloadCommand.cc * src/FtpInitiateConnectionCommand.cc * src/FtpNegotiationCommand.cc * src/FtpNegotiationCommand.h * src/FtpTunnelRequestCommand.cc * src/FtpTunnelResponseCommand.cc * src/HttpDownloadCommand.cc * src/HttpInitiateConnectionCommand.cc * src/HttpProxyRequestCommand.cc * src/HttpProxyResponseCommand.cc * src/HttpRequestCommand.cc * src/HttpResponseCommand.cc * src/HttpResponseCommand.h * src/HttpSkipResponseCommand.cc * src/InitiateConnectionCommand.cc
Diffstat (limited to 'src/AbstractCommand.h')
-rw-r--r--src/AbstractCommand.h98
1 files changed, 79 insertions, 19 deletions
diff --git a/src/AbstractCommand.h b/src/AbstractCommand.h
index fc793cee..577eeedc 100644
--- a/src/AbstractCommand.h
+++ b/src/AbstractCommand.h
@@ -55,19 +55,83 @@ class AsyncNameResolver;
class AbstractCommand : public Command {
private:
- Timer checkPoint;
- time_t timeout;
-protected:
+ Timer _checkPoint;
+ time_t _timeout;
+
RequestGroup* _requestGroup;
- SharedHandle<Request> req;
+ SharedHandle<Request> _req;
SharedHandle<FileEntry> _fileEntry;
- DownloadEngine* e;
- SharedHandle<SocketCore> socket;
+ DownloadEngine* _e;
+ SharedHandle<SocketCore> _socket;
std::vector<SharedHandle<Segment> > _segments;
#ifdef ENABLE_ASYNC_DNS
SharedHandle<AsyncNameResolver> _asyncNameResolver;
+#endif // ENABLE_ASYNC_DNS
+
+ bool _checkSocketIsReadable;
+ bool _checkSocketIsWritable;
+ SharedHandle<SocketCore> _readCheckTarget;
+ SharedHandle<SocketCore> _writeCheckTarget;
+ bool _nameResolverCheck;
+
+#ifdef ENABLE_ASYNC_DNS
+ void setNameResolverCheck(const SharedHandle<AsyncNameResolver>& resolver);
+
+ void disableNameResolverCheck
+ (const SharedHandle<AsyncNameResolver>& resolver);
+
+ bool nameResolveFinished() const;
+#endif // ENABLE_ASYNC_DNS
+protected:
+ RequestGroup* getRequestGroup() const
+ {
+ return _requestGroup;
+ }
+
+ const SharedHandle<Request>& getRequest() const
+ {
+ return _req;
+ }
+
+ void setRequest(const SharedHandle<Request>& request)
+ {
+ _req = request;
+ }
+
+ const SharedHandle<FileEntry>& getFileEntry() const
+ {
+ return _fileEntry;
+ }
+
+ void setFileEntry(const SharedHandle<FileEntry>& fileEntry)
+ {
+ _fileEntry = fileEntry;
+ }
+
+ DownloadEngine* getDownloadEngine() const
+ {
+ return _e;
+ }
+
+ const SharedHandle<SocketCore>& getSocket() const
+ {
+ return _socket;
+ }
+ void setSocket(const SharedHandle<SocketCore>& s)
+ {
+ _socket = s;
+ }
+
+ void createSocket();
+
+ const std::vector<SharedHandle<Segment> >& getSegments() const
+ {
+ return _segments;
+ }
+
+#ifdef ENABLE_ASYNC_DNS
bool isAsyncNameResolverInitialized() const;
void initAsyncNameResolver(const std::string& hostname);
@@ -106,7 +170,7 @@ protected:
*/
void setWriteCheckSocketIf(const SharedHandle<SocketCore>& socket, bool pred);
- void setTimeout(time_t timeout) { this->timeout = timeout; }
+ void setTimeout(time_t timeout) { _timeout = timeout; }
void prepareForNextAction(Command* nextCommand = 0);
@@ -143,20 +207,16 @@ protected:
{
return _requestGroup->getDownloadContext();
}
-private:
- bool checkSocketIsReadable;
- bool checkSocketIsWritable;
- SharedHandle<SocketCore> readCheckTarget;
- SharedHandle<SocketCore> writeCheckTarget;
- bool nameResolverCheck;
-#ifdef ENABLE_ASYNC_DNS
-
- void setNameResolverCheck(const SharedHandle<AsyncNameResolver>& resolver);
+ const SharedHandle<SegmentMan>& getSegmentMan() const
+ {
+ return _requestGroup->getSegmentMan();
+ }
- void disableNameResolverCheck(const SharedHandle<AsyncNameResolver>& resolver);
- bool nameResolveFinished() const;
-#endif // ENABLE_ASYNC_DNS
+ const SharedHandle<PieceStorage>& getPieceStorage() const
+ {
+ return _requestGroup->getPieceStorage();
+ }
public:
AbstractCommand(cuid_t cuid, const SharedHandle<Request>& req,
const SharedHandle<FileEntry>& fileEntry,