Made LpdMessage struct

pull/2/head
Tatsuhiro Tsujikawa 2011-10-18 00:47:14 +09:00
parent fc4d38d236
commit e700d2bb1f
4 changed files with 14 additions and 29 deletions

View File

@ -39,7 +39,7 @@ LpdMessage::LpdMessage() {}
LpdMessage::LpdMessage LpdMessage::LpdMessage
(const SharedHandle<Peer>& peer, const std::string& infoHash) (const SharedHandle<Peer>& peer, const std::string& infoHash)
: peer_(peer), infoHash_(infoHash) : peer(peer), infoHash(infoHash)
{} {}
LpdMessage::~LpdMessage() {} LpdMessage::~LpdMessage() {}

View File

@ -43,26 +43,12 @@ namespace aria2 {
class Peer; class Peer;
class LpdMessage { struct LpdMessage {
private: SharedHandle<Peer> peer;
SharedHandle<Peer> peer_; std::string infoHash;
std::string infoHash_;
public:
LpdMessage(); LpdMessage();
LpdMessage(const SharedHandle<Peer>& peer, const std::string& infoHash); LpdMessage(const SharedHandle<Peer>& peer, const std::string& infoHash);
~LpdMessage(); ~LpdMessage();
const SharedHandle<Peer>& getPeer() const
{
return peer_;
}
const std::string& getInfoHash() const
{
return infoHash_;
}
}; };
} // namespace aria2 } // namespace aria2

View File

@ -77,16 +77,15 @@ bool LpdReceiveMessageCommand::execute()
if(!m) { if(!m) {
break; break;
} }
if(!m->getPeer()) { if(!m->peer) {
// bad message // bad message
continue; continue;
} }
SharedHandle<BtRegistry> reg = e_->getBtRegistry(); SharedHandle<BtRegistry> reg = e_->getBtRegistry();
SharedHandle<DownloadContext> dctx = SharedHandle<DownloadContext> dctx = reg->getDownloadContext(m->infoHash);
reg->getDownloadContext(m->getInfoHash());
if(!dctx) { if(!dctx) {
A2_LOG_DEBUG(fmt("Download Context is null for infohash=%s.", A2_LOG_DEBUG(fmt("Download Context is null for infohash=%s.",
util::toHex(m->getInfoHash()).c_str())); util::toHex(m->infoHash).c_str()));
continue; continue;
} }
if(bittorrent::getTorrentAttrs(dctx)->privateTorrent) { if(bittorrent::getTorrentAttrs(dctx)->privateTorrent) {
@ -99,7 +98,7 @@ bool LpdReceiveMessageCommand::execute()
assert(!btobj.isNull()); assert(!btobj.isNull());
SharedHandle<PeerStorage> peerStorage = btobj.peerStorage_; SharedHandle<PeerStorage> peerStorage = btobj.peerStorage_;
assert(peerStorage); assert(peerStorage);
SharedHandle<Peer> peer = m->getPeer(); SharedHandle<Peer> peer = m->peer;
if(peerStorage->addPeer(peer)) { if(peerStorage->addPeer(peer)) {
A2_LOG_DEBUG(fmt("LPD peer %s:%u local=%d added.", A2_LOG_DEBUG(fmt("LPD peer %s:%u local=%d added.",
peer->getIPAddress().c_str(), peer->getPort(), peer->getIPAddress().c_str(), peer->getPort(),

View File

@ -52,8 +52,8 @@ void LpdMessageReceiverTest::testReceiveMessage()
SharedHandle<LpdMessage> msg = rcv.receiveMessage(); SharedHandle<LpdMessage> msg = rcv.receiveMessage();
CPPUNIT_ASSERT(msg); CPPUNIT_ASSERT(msg);
CPPUNIT_ASSERT_EQUAL(std::string("cd41c7fdddfd034a15a04d7ff881216e01c4ceaf"), CPPUNIT_ASSERT_EQUAL(std::string("cd41c7fdddfd034a15a04d7ff881216e01c4ceaf"),
util::toHex(msg->getInfoHash())); util::toHex(msg->infoHash));
CPPUNIT_ASSERT_EQUAL((uint16_t)6000, msg->getPeer()->getPort()); CPPUNIT_ASSERT_EQUAL((uint16_t)6000, msg->peer->getPort());
// Bad infohash // Bad infohash
std::string badInfoHashString = "cd41c7fdddfd034a15a04d7ff881216e01c4ce"; std::string badInfoHashString = "cd41c7fdddfd034a15a04d7ff881216e01c4ce";
@ -67,8 +67,8 @@ void LpdMessageReceiverTest::testReceiveMessage()
rcv.getSocket()->isReadable(5); rcv.getSocket()->isReadable(5);
msg = rcv.receiveMessage(); msg = rcv.receiveMessage();
CPPUNIT_ASSERT(msg); CPPUNIT_ASSERT(msg);
CPPUNIT_ASSERT(!msg->getPeer()); CPPUNIT_ASSERT(!msg->peer);
CPPUNIT_ASSERT(msg->getInfoHash().empty()); CPPUNIT_ASSERT(msg->infoHash.empty());
// Bad port // Bad port
request = request =
@ -81,8 +81,8 @@ void LpdMessageReceiverTest::testReceiveMessage()
rcv.getSocket()->isReadable(5); rcv.getSocket()->isReadable(5);
msg = rcv.receiveMessage(); msg = rcv.receiveMessage();
CPPUNIT_ASSERT(msg); CPPUNIT_ASSERT(msg);
CPPUNIT_ASSERT(!msg->getPeer()); CPPUNIT_ASSERT(!msg->peer);
CPPUNIT_ASSERT(msg->getInfoHash().empty()); CPPUNIT_ASSERT(msg->infoHash.empty());
// No data available // No data available
msg = rcv.receiveMessage(); msg = rcv.receiveMessage();