From 93968c4fa525d44bf83fb221874a8b8febee3905 Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Fri, 20 Nov 2009 15:42:25 +0000 Subject: 2009-11-21 Tatsuhiro Tsujikawa 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 --- src/DefaultExtensionMessageFactory.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/DefaultExtensionMessageFactory.h') 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 _registry; + SharedHandle _dctx; + + WeakHandle _messageFactory; + + WeakHandle _dispatcher; + Logger* _logger; public: @@ -75,6 +84,21 @@ public: { _registry = registry; } + + void setDownloadContext(const SharedHandle& dctx) + { + _dctx = dctx; + } + + void setBtMessageFactory(const WeakHandle& factory) + { + _messageFactory = factory; + } + + void setBtMessageDispatcher(const WeakHandle& disp) + { + _dispatcher = disp; + } }; typedef SharedHandle DefaultExtensionMessageFactoryHandle; -- cgit