/* */ #include "DHTResponseMessage.h" #include "DHTNode.h" #include "util.h" #include "bencode.h" #include "a2functional.h" namespace aria2 { const std::string DHTResponseMessage::R("r"); DHTResponseMessage::DHTResponseMessage(const SharedHandle& localNode, const SharedHandle& remoteNode, const std::string& transactionID): DHTAbstractMessage(localNode, remoteNode, transactionID) {} DHTResponseMessage::~DHTResponseMessage() {} std::string DHTResponseMessage::getType() const { return R; } void DHTResponseMessage::fillMessage(BDE& msgDict) { msgDict[R] = getResponse(); } bool DHTResponseMessage::isReply() const { return true; } std::string DHTResponseMessage::toString() const { return strconcat("dht response ", getMessageType(), " TransactionID=", util::toHex(_transactionID), " Remote:", _remoteNode->getIPAddress(), ":", util::uitos(_remoteNode->getPort()), ", id=", util::toHex(_remoteNode->getID(), DHT_ID_LENGTH), ", ", toStringOptional()); } } // namespace aria2