/* */ #ifndef CONNECT_COMMAND_H #define CONNECT_COMMAND_H #include "AbstractCommand.h" #include "ControlChain.h" namespace aria2 { class BackupConnectInfo; class ConnectCommand : public AbstractCommand { public: ConnectCommand(cuid_t cuid, const std::shared_ptr& req, const std::shared_ptr& proxyRequest, const std::shared_ptr& fileEntry, RequestGroup* requestGroup, DownloadEngine* e, const std::shared_ptr& s); virtual ~ConnectCommand(); void setControlChain (const std::shared_ptr >& chain); void setBackupConnectInfo(const std::shared_ptr& info); const std::shared_ptr& getProxyRequest() const; protected: virtual bool executeInternal(); virtual bool noCheck(); private: std::shared_ptr proxyRequest_; std::shared_ptr backupConnectionInfo_; std::shared_ptr > chain_; }; } // namespace aria2 #endif // CONNECT_COMMAND_H