diff options
Diffstat (limited to 'Swiften')
-rw-r--r-- | Swiften/Client/Client.cpp | 37 | ||||
-rw-r--r-- | Swiften/FileTransfer/FileTransferManagerImpl.cpp | 37 | ||||
-rw-r--r-- | Swiften/FileTransfer/FileTransferManagerImpl.h | 16 |
3 files changed, 43 insertions, 47 deletions
diff --git a/Swiften/Client/Client.cpp b/Swiften/Client/Client.cpp index 613249b..3bfdd3f 100644 --- a/Swiften/Client/Client.cpp +++ b/Swiften/Client/Client.cpp @@ -71,7 +71,6 @@ Client::Client(const JID& jid, const SafeString& password, NetworkFactories* net jingleSessionManager = new JingleSessionManager(getIQRouter()); blockListManager = new ClientBlockListManager(getIQRouter()); - fileTransferManager = NULL; whiteboardSessionManager = NULL; #ifdef SWIFT_EXPERIMENTAL_WB @@ -79,6 +78,24 @@ Client::Client(const JID& jid, const SafeString& password, NetworkFactories* net #endif pubsubManager = new PubSubManagerImpl(getStanzaChannel(), getIQRouter()); + +#ifdef SWIFT_EXPERIMENTAL_FT + fileTransferManager = new FileTransferManagerImpl( + getJID(), + jingleSessionManager, + getIQRouter(), + getEntityCapsProvider(), + presenceOracle, + getNetworkFactories()->getConnectionFactory(), + getNetworkFactories()->getConnectionServerFactory(), + getNetworkFactories()->getTimerFactory(), + getNetworkFactories()->getDomainNameResolver(), + getNetworkFactories()->getNetworkEnvironment(), + getNetworkFactories()->getNATTraverser(), + getNetworkFactories()->getCryptoProvider()); +#else + fileTransferManager = new DummyFileTransferManager(); +#endif } Client::~Client() { @@ -126,24 +143,6 @@ void Client::setSoftwareVersion(const std::string& name, const std::string& vers } void Client::handleConnected() { - delete fileTransferManager; -#ifdef SWIFT_EXPERIMENTAL_FT - fileTransferManager = new FileTransferManagerImpl( - getJID(), - jingleSessionManager, - getIQRouter(), - getEntityCapsProvider(), - presenceOracle, - getNetworkFactories()->getConnectionFactory(), - getNetworkFactories()->getConnectionServerFactory(), - getNetworkFactories()->getTimerFactory(), - getNetworkFactories()->getDomainNameResolver(), - getNetworkFactories()->getNetworkEnvironment(), - getNetworkFactories()->getNATTraverser(), - getNetworkFactories()->getCryptoProvider()); -#else - fileTransferManager = new DummyFileTransferManager(); -#endif discoManager->handleConnected(); } diff --git a/Swiften/FileTransfer/FileTransferManagerImpl.cpp b/Swiften/FileTransfer/FileTransferManagerImpl.cpp index ab08c45..f4f9517 100644 --- a/Swiften/FileTransfer/FileTransferManagerImpl.cpp +++ b/Swiften/FileTransfer/FileTransferManagerImpl.cpp @@ -13,34 +13,34 @@ #include <Swiften/FileTransfer/FileTransferManagerImpl.h> #include <boost/bind.hpp> -#include <boost/filesystem.hpp> #include <boost/cstdint.hpp> +#include <boost/filesystem.hpp> -#include <Swiften/Base/foreach.h> +#include "Swiften/Disco/EntityCapsProvider.h" +#include <Swiften/Base/BoostFilesystemVersion.h> #include <Swiften/Base/Log.h> #include <Swiften/Base/Path.h> -#include "Swiften/Disco/EntityCapsProvider.h" -#include <Swiften/JID/JID.h> +#include <Swiften/Base/foreach.h> #include <Swiften/Elements/JingleFileTransferFileInfo.h> -#include <Swiften/FileTransfer/SOCKS5BytestreamServerManager.h> -#include <Swiften/FileTransfer/OutgoingFileTransferManager.h> -#include <Swiften/FileTransfer/IncomingFileTransferManager.h> +#include <Swiften/Elements/Presence.h> #include <Swiften/FileTransfer/DefaultFileTransferTransporterFactory.h> -#include <Swiften/FileTransfer/SOCKS5BytestreamRegistry.h> +#include <Swiften/FileTransfer/IncomingFileTransferManager.h> +#include <Swiften/FileTransfer/OutgoingFileTransferManager.h> #include <Swiften/FileTransfer/SOCKS5BytestreamProxiesManager.h> -#include <Swiften/Presence/PresenceOracle.h> -#include <Swiften/Elements/Presence.h> +#include <Swiften/FileTransfer/SOCKS5BytestreamRegistry.h> +#include <Swiften/FileTransfer/SOCKS5BytestreamServerManager.h> +#include <Swiften/JID/JID.h> #include <Swiften/Network/ConnectionFactory.h> #include <Swiften/Network/ConnectionServerFactory.h> #include <Swiften/Network/HostAddress.h> #include <Swiften/Network/NATTraverser.h> - -#include <Swiften/Base/BoostFilesystemVersion.h> +#include <Swiften/Presence/PresenceOracle.h> +#include <Swiften/Queries/IQRouter.h> namespace Swift { FileTransferManagerImpl::FileTransferManagerImpl( - const JID& ownFullJID, + const JID& ownJID, JingleSessionManager* jingleSessionManager, IQRouter* router, EntityCapsProvider* capsProvider, @@ -52,16 +52,13 @@ FileTransferManagerImpl::FileTransferManagerImpl( NetworkEnvironment* networkEnvironment, NATTraverser* natTraverser, CryptoProvider* crypto) : - ownJID(ownFullJID), iqRouter(router), capsProvider(capsProvider), presenceOracle(presOracle) { - assert(!ownFullJID.isBare()); - bytestreamRegistry = new SOCKS5BytestreamRegistry(); s5bServerManager = new SOCKS5BytestreamServerManager( bytestreamRegistry, connectionServerFactory, networkEnvironment, natTraverser); - bytestreamProxy = new SOCKS5BytestreamProxiesManager(connectionFactory, timerFactory, domainNameResolver, iqRouter, JID(ownFullJID.getDomain())); + bytestreamProxy = new SOCKS5BytestreamProxiesManager(connectionFactory, timerFactory, domainNameResolver, iqRouter, JID(ownJID.getDomain())); transporterFactory = new DefaultFileTransferTransporterFactory( bytestreamRegistry, @@ -166,8 +163,10 @@ OutgoingFileTransfer::ref FileTransferManagerImpl::createOutgoingFileTransfer( return OutgoingFileTransfer::ref(); } } - - return outgoingFTManager->createOutgoingFileTransfer(ownJID, receipient, bytestream, fileInfo, config); + + assert(!iqRouter->getJID().isBare()); + + return outgoingFTManager->createOutgoingFileTransfer(iqRouter->getJID(), receipient, bytestream, fileInfo, config); } } diff --git a/Swiften/FileTransfer/FileTransferManagerImpl.h b/Swiften/FileTransfer/FileTransferManagerImpl.h index de6e857..7a77564 100644 --- a/Swiften/FileTransfer/FileTransferManagerImpl.h +++ b/Swiften/FileTransfer/FileTransferManagerImpl.h @@ -12,23 +12,22 @@ #pragma once -#include <vector> #include <string> +#include <vector> -#include <boost/filesystem/path.hpp> #include <boost/date_time/posix_time/posix_time.hpp> +#include <boost/filesystem/path.hpp> #include <boost/optional.hpp> #include <Swiften/Base/API.h> +#include <Swiften/Base/IDGenerator.h> #include <Swiften/Base/Override.h> +#include <Swiften/Base/boost_bsignals.h> +#include <Swiften/Elements/S5BProxyRequest.h> #include <Swiften/FileTransfer/FileTransferManager.h> #include <Swiften/FileTransfer/FileTransferOptions.h> -#include <Swiften/Base/boost_bsignals.h> -#include <Swiften/Base/IDGenerator.h> -#include <Swiften/JID/JID.h> -#include <Swiften/FileTransfer/OutgoingFileTransfer.h> #include <Swiften/FileTransfer/IncomingFileTransfer.h> -#include <Swiften/Elements/S5BProxyRequest.h> +#include <Swiften/FileTransfer/OutgoingFileTransfer.h> namespace Swift { class ConnectionFactory; @@ -39,6 +38,7 @@ namespace Swift { class FileTransferTransporterFactory; class IQRouter; class IncomingFileTransferManager; + class JID; class JingleSessionManager; class NATTraverser; class NetworkEnvironment; @@ -89,8 +89,6 @@ namespace Swift { boost::optional<JID> highestPriorityJIDSupportingFileTransfer(const JID& bareJID); private: - JID ownJID; - OutgoingFileTransferManager* outgoingFTManager; IncomingFileTransferManager* incomingFTManager; FileTransferTransporterFactory* transporterFactory; |