/* */ #ifndef D_DHT_INTERACTION_COMMAND_H #define D_DHT_INTERACTION_COMMAND_H #include "Command.h" #include "SharedHandle.h" namespace aria2 { class DHTMessageDispatcher; class DHTMessageReceiver; class DHTTaskQueue; class DownloadEngine; class SocketCore; class DHTInteractionCommand:public Command { private: DownloadEngine* e_; SharedHandle dispatcher_; SharedHandle receiver_; SharedHandle taskQueue_; SharedHandle readCheckSocket_; public: DHTInteractionCommand(cuid_t cuid, DownloadEngine* e); virtual ~DHTInteractionCommand(); virtual bool execute(); void setReadCheckSocket(const SharedHandle& socket); void disableReadCheckSocket(const SharedHandle& socket); void setMessageDispatcher(const SharedHandle& dispatcher); void setMessageReceiver(const SharedHandle& receiver); void setTaskQueue(const SharedHandle& taskQueue); }; } // namespace aria2 #endif // D_DHT_INTERACTION_COMMAND_H