Browse Source

DefaultPeerStorage: Code cleanup

Tatsuhiro Tsujikawa 12 năm trước cách đây
mục cha
commit
6d2dd2ab18
2 tập tin đã thay đổi với 20 bổ sung21 xóa
  1. 12 13
      src/DefaultPeerStorage.cc
  2. 8 8
      src/DefaultPeerStorage.h

+ 12 - 13
src/DefaultPeerStorage.cc

@@ -60,15 +60,13 @@ const size_t MAX_PEER_LIST_UPDATE = 100;
 
 DefaultPeerStorage::DefaultPeerStorage()
   : maxPeerListSize_(MAX_PEER_LIST_SIZE),
-    seederStateChoke_(new BtSeederStateChoke()),
-    leecherStateChoke_(new BtLeecherStateChoke()),
+    seederStateChoke_(make_unique<BtSeederStateChoke>()),
+    leecherStateChoke_(make_unique<BtLeecherStateChoke>()),
     lastTransferStatMapUpdated_(0)
 {}
 
 DefaultPeerStorage::~DefaultPeerStorage()
 {
-  delete seederStateChoke_;
-  delete leecherStateChoke_;
   assert(uniqPeers_.size() == unusedPeers_.size() + usedPeers_.size());
 }
 
@@ -112,13 +110,14 @@ bool DefaultPeerStorage::addPeer(const std::shared_ptr<Peer>& peer)
   return true;
 }
 
-void DefaultPeerStorage::addPeer(const std::vector<std::shared_ptr<Peer> >& peers)
+void DefaultPeerStorage::addPeer
+(const std::vector<std::shared_ptr<Peer>>& peers)
 {
   size_t added = 0;
   size_t addMax = std::min(maxPeerListSize_, MAX_PEER_LIST_UPDATE);
-  for(auto itr = peers.begin(),
-        eoi = peers.end(); itr != eoi && added < addMax; ++itr) {
-    const std::shared_ptr<Peer>& peer = *itr;
+  for(auto itr = std::begin(peers), eoi = std::end(peers);
+      itr != eoi && added < addMax; ++itr) {
+    auto& peer = *itr;
     if(isPeerAlreadyAdded(peer)) {
       A2_LOG_DEBUG(fmt("Adding %s:%u is rejected because it has been already"
                        " added.",
@@ -148,8 +147,8 @@ void DefaultPeerStorage::addDroppedPeer(const std::shared_ptr<Peer>& peer)
 {
   // Make sure that no duplicated peer exists in droppedPeers_. If
   // exists, erase older one.
-  for(auto i = droppedPeers_.begin(),
-        eoi = droppedPeers_.end(); i != eoi; ++i) {
+  for(auto i = std::begin(droppedPeers_), eoi = std::end(droppedPeers_);
+      i != eoi; ++i) {
     if((*i)->getIPAddress() == peer->getIPAddress() &&
        (*i)->getPort() == peer->getPort()) {
       droppedPeers_.erase(i);
@@ -162,7 +161,7 @@ void DefaultPeerStorage::addDroppedPeer(const std::shared_ptr<Peer>& peer)
   }
 }
 
-const std::deque<std::shared_ptr<Peer> >& DefaultPeerStorage::getUnusedPeers()
+const std::deque<std::shared_ptr<Peer>>& DefaultPeerStorage::getUnusedPeers()
 {
   return unusedPeers_;
 }
@@ -172,7 +171,7 @@ const PeerSet& DefaultPeerStorage::getUsedPeers()
   return usedPeers_;
 }
 
-const std::deque<std::shared_ptr<Peer> >& DefaultPeerStorage::getDroppedPeers()
+const std::deque<std::shared_ptr<Peer>>& DefaultPeerStorage::getDroppedPeers()
 {
   return droppedPeers_;
 }
@@ -229,7 +228,7 @@ std::shared_ptr<Peer> DefaultPeerStorage::checkoutPeer(cuid_t cuid)
   if(!isPeerAvailable()) {
     return nullptr;
   }
-  std::shared_ptr<Peer> peer = unusedPeers_.front();
+  auto peer = unusedPeers_.front();
   unusedPeers_.pop_front();
   if(peer->usedBy() != 0) {
     A2_LOG_WARN(fmt("CUID#%" PRId64 " is already set for peer %s:%u",

+ 8 - 8
src/DefaultPeerStorage.h

@@ -57,17 +57,17 @@ private:
 
   // This contains ip address and port pair and is used to ensure that
   // no duplicate peers are stored.
-  std::set<std::pair<std::string, uint16_t> > uniqPeers_;
+  std::set<std::pair<std::string, uint16_t>> uniqPeers_;
   // Unused (not connected) peers, sorted by last added.
-  std::deque<std::shared_ptr<Peer> > unusedPeers_;
+  std::deque<std::shared_ptr<Peer>> unusedPeers_;
   // The set of used peers. Some of them are not connected yet. To
   // know it is connected or not, call Peer::isActive().
   PeerSet usedPeers_;
 
-  std::deque<std::shared_ptr<Peer> > droppedPeers_;
+  std::deque<std::shared_ptr<Peer>> droppedPeers_;
 
-  BtSeederStateChoke* seederStateChoke_;
-  BtLeecherStateChoke* leecherStateChoke_;
+  std::unique_ptr<BtSeederStateChoke> seederStateChoke_;
+  std::unique_ptr<BtLeecherStateChoke> leecherStateChoke_;
 
   Timer lastTransferStatMapUpdated_;
 
@@ -90,14 +90,14 @@ public:
 
   std::shared_ptr<Peer> getPeer(const std::string& ipaddr, uint16_t port) const;
 
-  virtual void addPeer(const std::vector<std::shared_ptr<Peer> >& peers)
+  virtual void addPeer(const std::vector<std::shared_ptr<Peer>>& peers)
     CXX11_OVERRIDE;
 
-  const std::deque<std::shared_ptr<Peer> >& getUnusedPeers();
+  const std::deque<std::shared_ptr<Peer>>& getUnusedPeers();
 
   virtual const PeerSet& getUsedPeers() CXX11_OVERRIDE;
 
-  virtual const std::deque<std::shared_ptr<Peer> >& getDroppedPeers()
+  virtual const std::deque<std::shared_ptr<Peer>>& getDroppedPeers()
     CXX11_OVERRIDE;
 
   virtual bool isPeerAvailable() CXX11_OVERRIDE;