Ver Fonte

2009-05-29 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>

	Removed Peer.cc from compile source list when --disable-bittorrent
	is specified.  Added #ifdef ENABLE_BITTORRENT guard to methods that
	takes Peer.
	* src/DefaultPieceStorage.cc
	* src/DefaultPieceStorage.h
	* src/Makefile.am
	* src/PieceStorage.h
	* src/UnknownLengthPieceStorage.cc
	* src/UnknownLengthPieceStorage.h
	* test/MockPieceStorage.h
Tatsuhiro Tsujikawa há 16 anos atrás
pai
commit
918c6bf38d

+ 13 - 0
ChangeLog

@@ -1,3 +1,16 @@
+2009-05-29  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
+
+	Removed Peer.cc from compile source list when --disable-bittorrent
+	is specified.  Added #ifdef ENABLE_BITTORRENT guard to methods that
+	takes Peer.
+	* src/DefaultPieceStorage.cc
+	* src/DefaultPieceStorage.h
+	* src/Makefile.am
+	* src/PieceStorage.h
+	* src/UnknownLengthPieceStorage.cc
+	* src/UnknownLengthPieceStorage.h
+	* test/MockPieceStorage.h
+
 2009-05-29  Tatsuhiro Tsujikawa  <t-tujikawa@users.sourceforge.net>
 
 	Implemented getter methods in header files to give them more

+ 10 - 6
src/DefaultPieceStorage.cc

@@ -80,12 +80,6 @@ DefaultPieceStorage::~DefaultPieceStorage() {
   delete bitfieldMan;
 }
 
-bool DefaultPieceStorage::hasMissingPiece(const PeerHandle& peer)
-{
-  return bitfieldMan->hasMissingPiece(peer->getBitfield(),
-				      peer->getBitfieldLength());
-}
-
 bool DefaultPieceStorage::isEndGame()
 {
   return bitfieldMan->countMissingBlock() <= endGamePieceNum;
@@ -194,6 +188,14 @@ SharedHandle<Piece> DefaultPieceStorage::getMissingPiece
   return getMissingPiece(bitfield.getBitfield(), bitfield.getBitfieldLength());
 }
 
+#ifdef ENABLE_BITTORRENT
+
+bool DefaultPieceStorage::hasMissingPiece(const PeerHandle& peer)
+{
+  return bitfieldMan->hasMissingPiece(peer->getBitfield(),
+				      peer->getBitfieldLength());
+}
+
 PieceHandle DefaultPieceStorage::getMissingPiece(const SharedHandle<Peer>& peer)
 {
   return getMissingPiece(peer->getBitfield(), peer->getBitfieldLength());
@@ -257,6 +259,8 @@ SharedHandle<Piece> DefaultPieceStorage::getMissingFastPiece
   }
 }
 
+#endif // ENABLE_BITTORRENT
+
 PieceHandle DefaultPieceStorage::getMissingPiece()
 {
   size_t index;

+ 6 - 0
src/DefaultPieceStorage.h

@@ -94,8 +94,10 @@ private:
 
   SharedHandle<Piece> getMissingPiece(const BitfieldMan& bitfield);
 
+#ifdef ENABLE_BITTORRENT
   void createFastIndexBitfield(BitfieldMan& bitfield,
 			       const SharedHandle<Peer>& peer);
+#endif // ENABLE_BITTORRENT
 
   SharedHandle<Piece> checkOutPiece(size_t index);
 //   size_t deleteUsedPiecesByFillRate(int fillRate, size_t toDelete);
@@ -115,6 +117,8 @@ public:
 		      
   virtual ~DefaultPieceStorage();
 
+#ifdef ENABLE_BITTORRENT
+
   virtual bool hasMissingPiece(const SharedHandle<Peer>& peer);
 
   virtual SharedHandle<Piece> getMissingPiece(const SharedHandle<Peer>& peer);
@@ -127,6 +131,8 @@ public:
   virtual SharedHandle<Piece> getMissingFastPiece
   (const SharedHandle<Peer>& peer, const std::deque<size_t>& excludedIndexes);
 
+#endif // ENABLE_BITTORRENT
+
   virtual SharedHandle<Piece> getMissingPiece();
 
   virtual SharedHandle<Piece> getMissingPiece(size_t index);

+ 0 - 1
src/Makefile.am

@@ -144,7 +144,6 @@ SRCS =  Socket.h\
 	AbstractSingleDiskAdaptor.cc AbstractSingleDiskAdaptor.h\
 	DirectDiskAdaptor.cc DirectDiskAdaptor.h\
 	MultiDiskAdaptor.cc MultiDiskAdaptor.h\
-	Peer.cc\
 	PeerSessionResource.cc PeerSessionResource.h\
 	BtRegistry.cc BtRegistry.h\
 	MultiFileAllocationIterator.cc MultiFileAllocationIterator.h\

+ 6 - 6
src/Makefile.in

@@ -393,7 +393,7 @@ am__libaria2c_a_SOURCES_DIST = Socket.h SocketCore.cc SocketCore.h \
 	IteratableValidator.h DiskAdaptor.cc DiskAdaptor.h \
 	AbstractSingleDiskAdaptor.cc AbstractSingleDiskAdaptor.h \
 	DirectDiskAdaptor.cc DirectDiskAdaptor.h MultiDiskAdaptor.cc \
-	MultiDiskAdaptor.h Peer.cc PeerSessionResource.cc \
+	MultiDiskAdaptor.h PeerSessionResource.cc \
 	PeerSessionResource.h BtRegistry.cc BtRegistry.h \
 	MultiFileAllocationIterator.cc MultiFileAllocationIterator.h \
 	PeerConnection.cc PeerConnection.h ByteArrayDiskWriter.cc \
@@ -458,7 +458,7 @@ am__libaria2c_a_SOURCES_DIST = Socket.h SocketCore.cc SocketCore.h \
 	PeerAbstractCommand.cc PeerAbstractCommand.h \
 	PeerInitiateConnectionCommand.cc \
 	PeerInitiateConnectionCommand.h PeerInteractionCommand.cc \
-	PeerInteractionCommand.h Peer.h PeerListenCommand.cc \
+	PeerInteractionCommand.h Peer.cc Peer.h PeerListenCommand.cc \
 	PeerListenCommand.h RequestSlot.cc RequestSlot.h \
 	TrackerWatcherCommand.cc TrackerWatcherCommand.h \
 	PeerChokeCommand.cc PeerChokeCommand.h SeedCriteria.h \
@@ -826,9 +826,9 @@ am__objects_26 = SocketCore.$(OBJEXT) Command.$(OBJEXT) \
 	StreamCheckIntegrityEntry.$(OBJEXT) DiskAdaptor.$(OBJEXT) \
 	AbstractSingleDiskAdaptor.$(OBJEXT) \
 	DirectDiskAdaptor.$(OBJEXT) MultiDiskAdaptor.$(OBJEXT) \
-	Peer.$(OBJEXT) PeerSessionResource.$(OBJEXT) \
-	BtRegistry.$(OBJEXT) MultiFileAllocationIterator.$(OBJEXT) \
-	PeerConnection.$(OBJEXT) ByteArrayDiskWriter.$(OBJEXT) \
+	PeerSessionResource.$(OBJEXT) BtRegistry.$(OBJEXT) \
+	MultiFileAllocationIterator.$(OBJEXT) PeerConnection.$(OBJEXT) \
+	ByteArrayDiskWriter.$(OBJEXT) \
 	ByteArrayDiskWriterFactory.$(OBJEXT) ServerHost.$(OBJEXT) \
 	DownloadContext.$(OBJEXT) SingleFileDownloadContext.$(OBJEXT) \
 	TimedHaltCommand.$(OBJEXT) prefs.$(OBJEXT) \
@@ -1149,7 +1149,7 @@ SRCS = Socket.h SocketCore.cc SocketCore.h BinaryStream.h Command.cc \
 	IteratableValidator.h DiskAdaptor.cc DiskAdaptor.h \
 	AbstractSingleDiskAdaptor.cc AbstractSingleDiskAdaptor.h \
 	DirectDiskAdaptor.cc DirectDiskAdaptor.h MultiDiskAdaptor.cc \
-	MultiDiskAdaptor.h Peer.cc PeerSessionResource.cc \
+	MultiDiskAdaptor.h PeerSessionResource.cc \
 	PeerSessionResource.h BtRegistry.cc BtRegistry.h \
 	MultiFileAllocationIterator.cc MultiFileAllocationIterator.h \
 	PeerConnection.cc PeerConnection.h ByteArrayDiskWriter.cc \

+ 9 - 3
src/PieceStorage.h

@@ -36,22 +36,26 @@
 #define _D_PIECE_STORAGE_H_
 
 #include "common.h"
-#include "SharedHandle.h"
-#include "TimeA2.h"
-#include "IntSequence.h"
+
 #include <string>
 #include <deque>
 
+#include "SharedHandle.h"
+#include "TimeA2.h"
+
 namespace aria2 {
 
 class Piece;
+#ifdef ENABLE_BITTORRENT
 class Peer;
+#endif // ENABLE_BITTORRENT
 class DiskAdaptor;
 
 class PieceStorage {
 public:
   virtual ~PieceStorage() {}
 
+#ifdef ENABLE_BITTORRENT
   /**
    * Returns true if the peer has a piece that localhost doesn't have.
    * Otherwise returns false.
@@ -93,6 +97,8 @@ public:
   (const SharedHandle<Peer>& peer,
    const std::deque<size_t>& excludedIndexes) = 0;
 
+#endif // ENABLE_BITTORRENT
+
   /**
    * Returns a missing piece if available. Otherwise returns 0;
    */

+ 7 - 1
src/UnknownLengthPieceStorage.cc

@@ -33,6 +33,9 @@
  */
 /* copyright --> */
 #include "UnknownLengthPieceStorage.h"
+
+#include <cstdlib>
+
 #include "DefaultDiskWriter.h"
 #include "DirectDiskAdaptor.h"
 #include "prefs.h"
@@ -40,7 +43,6 @@
 #include "DownloadContext.h"
 #include "Piece.h"
 #include "FileEntry.h"
-#include <stdlib.h>
 
 namespace aria2 {
 
@@ -67,6 +69,8 @@ void UnknownLengthPieceStorage::initStorage()
   _diskAdaptor = directDiskAdaptor;
 }
 
+#ifdef ENABLE_BITTORRENT
+
 bool UnknownLengthPieceStorage::hasMissingPiece(const SharedHandle<Peer>& peer)
 {
   abort();
@@ -94,6 +98,8 @@ SharedHandle<Piece> UnknownLengthPieceStorage::getMissingFastPiece
   abort();
 }
 
+#endif // ENABLE_BITTORRENT
+
 PieceHandle UnknownLengthPieceStorage::getMissingPiece()
 {
   if(_downloadFinished) {

+ 4 - 0
src/UnknownLengthPieceStorage.h

@@ -65,6 +65,8 @@ public:
 
   virtual ~UnknownLengthPieceStorage();
 
+#ifdef ENABLE_BITTORRENT
+
   /**
    * Returns true if the peer has a piece that localhost doesn't have.
    * Otherwise returns false.
@@ -94,6 +96,8 @@ public:
   virtual SharedHandle<Piece> getMissingFastPiece
   (const SharedHandle<Peer>& peer, const std::deque<size_t>& excludedIndexes);
 
+#endif // ENABLE_BITTORRENT
+
   /**
    * Returns a missing piece if available. Otherwise returns 0;
    */

+ 7 - 1
test/MockPieceStorage.h

@@ -2,10 +2,12 @@
 #define _D_MOCK_PIECE_STORAGE_H_
 
 #include "PieceStorage.h"
+
+#include <algorithm>
+
 #include "BitfieldMan.h"
 #include "Piece.h"
 #include "DiskAdaptor.h"
-#include <algorithm>
 
 namespace aria2 {
 
@@ -34,6 +36,8 @@ public:
 
   virtual ~MockPieceStorage() {}
 
+#ifdef ENABLE_BITTORRENT
+
   virtual bool hasMissingPiece(const SharedHandle<Peer>& peer) {
     return false;
   }
@@ -58,6 +62,8 @@ public:
     return SharedHandle<Piece>(new Piece());
   }
 
+#endif // ENABLE_BITTORRENT
+
   virtual SharedHandle<Piece> getMissingPiece()
   {
     return SharedHandle<Piece>(new Piece());