/* */ #ifndef _D_BT_CHOKE_MESSAGE_H_ #define _D_BT_CHOKE_MESSAGE_H_ #include "SimpleBtMessage.h" namespace aria2 { class BtChokeMessage; typedef SharedHandle BtChokeMessageHandle; class BtChokeMessage : public SimpleBtMessage { private: unsigned char* msg; static int32_t MESSAGE_LENGTH; public: BtChokeMessage():SimpleBtMessage(), msg(0) {} virtual ~BtChokeMessage() { delete [] msg; } static const int8_t ID = 0; virtual int8_t getId() { return ID; } virtual void doReceivedAction(); virtual const unsigned char* getMessage(); virtual int32_t getMessageLength(); virtual std::string toString() const; static BtChokeMessageHandle create(const unsigned char* data, int32_t dataLength); virtual bool sendPredicate() const; virtual void onSendComplete(); }; } // namespace aria2 #endif // _D_CHOKE_MESSAGE_H_