summaryrefslogtreecommitdiff
path: root/src/DefaultExtensionMessageFactory.h
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-11-20 15:42:25 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-11-20 15:42:25 +0000
commit93968c4fa525d44bf83fb221874a8b8febee3905 (patch)
treeca34cb33f56f18a04b0a154d19f0bd8df47edf33 /src/DefaultExtensionMessageFactory.h
parent2764b6739d0b0414cf0ce31c2f8db5b24f68b75e (diff)
2009-11-21 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Initial support of Extension for Peers to Send Metadata Files(BEP9). Currently aria2 only serves metadata and cannot get metadata from swarm. * src/BtConstants.h * src/DefaultBtInteractive.cc * src/DefaultExtensionMessageFactory.cc * src/DefaultExtensionMessageFactory.h * src/ExtensionMessage.h * src/ExtensionMessageRegistry.h * src/HandshakeExtensionMessage.cc * src/HandshakeExtensionMessage.h * src/Makefile.am * src/PeerConnection.h * src/PeerInteractionCommand.cc * src/UTMetadataDataExtensionMessage.cc * src/UTMetadataDataExtensionMessage.h * src/UTMetadataExtensionMessage.cc * src/UTMetadataExtensionMessage.h * src/UTMetadataRejectExtensionMessage.cc * src/UTMetadataRejectExtensionMessage.h * src/UTMetadataRequestExtensionMessage.cc * src/UTMetadataRequestExtensionMessage.h * src/bittorrent_helper.cc * src/bittorrent_helper.h * test/BittorrentHelperTest.cc * test/DefaultExtensionMessageFactoryTest.cc * test/HandshakeExtensionMessageTest.cc * test/Makefile.am * test/UTMetadataDataExtensionMessageTest.cc * test/UTMetadataRejectExtensionMessageTest.cc * test/UTMetadataRequestExtensionMessageTest.cc
Diffstat (limited to 'src/DefaultExtensionMessageFactory.h')
-rw-r--r--src/DefaultExtensionMessageFactory.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/DefaultExtensionMessageFactory.h b/src/DefaultExtensionMessageFactory.h
index dfc1c0ec..319528f6 100644
--- a/src/DefaultExtensionMessageFactory.h
+++ b/src/DefaultExtensionMessageFactory.h
@@ -43,6 +43,9 @@ class PeerStorage;
class Peer;
class Logger;
class ExtensionMessageRegistry;
+class DownloadContext;
+class BtMessageFactory;
+class BtMessageDispatcher;
class DefaultExtensionMessageFactory:public ExtensionMessageFactory {
private:
@@ -52,6 +55,12 @@ private:
SharedHandle<ExtensionMessageRegistry> _registry;
+ SharedHandle<DownloadContext> _dctx;
+
+ WeakHandle<BtMessageFactory> _messageFactory;
+
+ WeakHandle<BtMessageDispatcher> _dispatcher;
+
Logger* _logger;
public:
@@ -75,6 +84,21 @@ public:
{
_registry = registry;
}
+
+ void setDownloadContext(const SharedHandle<DownloadContext>& dctx)
+ {
+ _dctx = dctx;
+ }
+
+ void setBtMessageFactory(const WeakHandle<BtMessageFactory>& factory)
+ {
+ _messageFactory = factory;
+ }
+
+ void setBtMessageDispatcher(const WeakHandle<BtMessageDispatcher>& disp)
+ {
+ _dispatcher = disp;
+ }
};
typedef SharedHandle<DefaultExtensionMessageFactory> DefaultExtensionMessageFactoryHandle;