Browse Source

2008-05-11 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>

	Changed method signature:
	PieceStorage::getAdvertisedPieceIndexes
	* src/DefaultBtInteractive.cc
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/PieceStorage.h
	* src/UnknownLengthPieceStorage.h
	* test/MockPieceStorage.h
Tatsuhiro Tsujikawa 17 years ago
parent
commit
7ec7b7ea60

+ 11 - 0
ChangeLog

@@ -1,3 +1,14 @@
+2008-05-11  Tatsuhiro Tsujikawa  <tujikawa at rednoah dot com>
+
+	Changed method signature:
+	PieceStorage::getAdvertisedPieceIndexes
+	* src/DefaultBtInteractive.cc
+	* src/DefaultPieceStorage.cc
+	* src/DefaultPieceStorage.h
+	* src/PieceStorage.h
+	* src/UnknownLengthPieceStorage.h
+	* test/MockPieceStorage.h
+	
 2008-05-11  Tatsuhiro Tsujikawa  <tujikawa at rednoah dot com>
 
 	Changed method signature:

+ 2 - 2
src/DefaultBtInteractive.cc

@@ -200,8 +200,8 @@ void DefaultBtInteractive::decideChoking() {
 }
 
 void DefaultBtInteractive::checkHave() {
-  std::deque<size_t> indexes =
-    pieceStorage->getAdvertisedPieceIndexes(cuid, haveCheckPoint);
+  std::deque<size_t> indexes;
+  pieceStorage->getAdvertisedPieceIndexes(indexes, cuid, haveCheckPoint);
   haveCheckPoint.reset();
   if(indexes.size() >= 20) {
     if(peer->isFastExtensionEnabled() && pieceStorage->allDownloadFinished()) {

+ 3 - 4
src/DefaultPieceStorage.cc

@@ -552,11 +552,11 @@ void DefaultPieceStorage::advertisePiece(int32_t cuid, size_t index)
   haves.push_front(entry);
 }
 
-std::deque<size_t>
-DefaultPieceStorage::getAdvertisedPieceIndexes(int32_t myCuid,
+void
+DefaultPieceStorage::getAdvertisedPieceIndexes(std::deque<size_t>& indexes,
+					       int32_t myCuid,
 					       const Time& lastCheckTime)
 {
-  std::deque<size_t> indexes;
   for(Haves::const_iterator itr = haves.begin(); itr != haves.end(); itr++) {
     const Haves::value_type& have = *itr;
     if(have.getCuid() == myCuid) {
@@ -567,7 +567,6 @@ DefaultPieceStorage::getAdvertisedPieceIndexes(int32_t myCuid,
     }
     indexes.push_back(have.getIndex());
   }
-  return indexes;
 }
 
 class FindElapsedHave

+ 3 - 2
src/DefaultPieceStorage.h

@@ -181,8 +181,9 @@ public:
 
   virtual void advertisePiece(int32_t cuid, size_t index);
 
-  virtual std::deque<size_t>
-  getAdvertisedPieceIndexes(int32_t myCuid, const Time& lastCheckTime);
+  virtual void
+  getAdvertisedPieceIndexes(std::deque<size_t>& indexes,
+			    int32_t myCuid, const Time& lastCheckTime);
 
   virtual void removeAdvertisedPiece(time_t elapsed);
 

+ 5 - 4
src/PieceStorage.h

@@ -176,11 +176,12 @@ public:
   virtual void advertisePiece(int32_t cuid, size_t index) = 0;
 
   /**
-   * Returns piece index which is not advertised by the caller command and
-   * newer than lastCheckTime.
+   * indexes is filled with piece index which is not advertised by the caller
+   * command and newer than lastCheckTime.
    */
-  virtual std::deque<size_t>
-  getAdvertisedPieceIndexes(int32_t myCuid, const Time& lastCheckTime) = 0;
+  virtual void getAdvertisedPieceIndexes(std::deque<size_t>& indexes,
+					 int32_t myCuid,
+					 const Time& lastCheckTime) = 0;
 
   /**
    * Removes have entry if specified seconds have elapsed since its

+ 4 - 5
src/UnknownLengthPieceStorage.h

@@ -216,11 +216,10 @@ public:
    * Returns piece index which is not advertised by the caller command and
    * newer than lastCheckTime.
    */
-  virtual std::deque<size_t>
-  getAdvertisedPieceIndexes(int32_t myCuid, const Time& lastCheckTime)
-  {
-    return std::deque<size_t>();
-  }
+  virtual void
+  getAdvertisedPieceIndexes(std::deque<size_t>& indexes,
+			    int32_t myCuid, const Time& lastCheckTime)
+  {}
 
   /**
    * Removes have entry if specified seconds have elapsed since its

+ 4 - 4
test/MockPieceStorage.h

@@ -183,10 +183,10 @@ public:
 
   virtual void advertisePiece(int32_t cuid, size_t index) {}
 
-  virtual std::deque<size_t> getAdvertisedPieceIndexes(int32_t myCuid,
-						       const Time& lastCheckTime) {
-    return std::deque<size_t>();
-  }
+  virtual void getAdvertisedPieceIndexes(std::deque<size_t>& indexes,
+					 int32_t myCuid,
+					 const Time& lastCheckTime)
+  {}
 
   virtual void removeAdvertisedPiece(time_t elapsed) {}