/* */ #ifndef D_ABSTRACT_PROXY_RESPONSE_COMMAND_H #define D_ABSTRACT_PROXY_RESPONSE_COMMAND_H #include "AbstractCommand.h" namespace aria2 { class HttpConnection; class SocketCore; class AbstractProxyResponseCommand : public AbstractCommand { private: std::shared_ptr httpConnection_; protected: virtual bool executeInternal() CXX11_OVERRIDE; const std::shared_ptr& getHttpConnection() const { return httpConnection_; } public: AbstractProxyResponseCommand( cuid_t cuid, const std::shared_ptr& req, const std::shared_ptr& fileEntry, RequestGroup* requestGroup, const std::shared_ptr& httpConnection, DownloadEngine* e, const std::shared_ptr& s); virtual ~AbstractProxyResponseCommand(); virtual std::unique_ptr getNextCommand() = 0; }; } // namespace aria2 #endif // D_ABSTRACT_PROXY_RESPONSE_COMMAND_H