Files
        @ 8d8ec5c94acb
    
        
              Branch filter: 
        
    Location: libtransport.git/include/Swiften/FileTransfer/CombinedOutgoingFileTransferManager.h - annotation
        
            
            8d8ec5c94acb
            1.9 KiB
            text/plain
        
        
    
    Changelog
    | 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be f035510e4798 f035510e4798 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be f035510e4798 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be f035510e4798 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be 88b7dd86b2be | /*
 * Copyright (c) 2011 Tobias Markmann
 * Licensed under the simplified BSD license.
 * See Documentation/Licenses/BSD-simplified.txt for more information.
 */
#pragma once
#include <boost/shared_ptr.hpp>
#include <boost/optional.hpp>
#include <Swiften/JID/JID.h>
#include "transport/presenceoracle.h"
namespace Swift {
class JingleSessionManager;
class IQRouter;
class EntityCapsProvider;
class RemoteJingleTransportCandidateSelectorFactory;
class LocalJingleTransportCandidateGeneratorFactory;
class OutgoingFileTransfer;
class JID;
class IDGenerator;
class ReadBytestream;
class StreamInitiationFileInfo;
class SOCKS5BytestreamRegistry;
class SOCKS5BytestreamProxy;
class SOCKS5BytestreamServer;
class PresenceOracle;
class CombinedOutgoingFileTransferManager {
public:
	CombinedOutgoingFileTransferManager(JingleSessionManager* jingleSessionManager, IQRouter* router, EntityCapsProvider* capsProvider, RemoteJingleTransportCandidateSelectorFactory* remoteFactory, LocalJingleTransportCandidateGeneratorFactory* localFactory, SOCKS5BytestreamRegistry* bytestreamRegistry, SOCKS5BytestreamProxy* bytestreamProxy, Transport::PresenceOracle* presOracle, SOCKS5BytestreamServer *server);
	~CombinedOutgoingFileTransferManager();
	
	boost::shared_ptr<OutgoingFileTransfer> createOutgoingFileTransfer(const JID& from, const JID& to, boost::shared_ptr<ReadBytestream>, const StreamInitiationFileInfo&);
private:
	boost::optional<JID> highestPriorityJIDSupportingJingle(const JID& bareJID);
	boost::optional<JID> highestPriorityJIDSupportingSI(const JID& bareJID);
	JingleSessionManager* jsManager;
	IQRouter* iqRouter;
	EntityCapsProvider* capsProvider;
	RemoteJingleTransportCandidateSelectorFactory* remoteFactory;
	LocalJingleTransportCandidateGeneratorFactory* localFactory;
	IDGenerator *idGenerator;
	SOCKS5BytestreamRegistry* bytestreamRegistry;
	SOCKS5BytestreamProxy* bytestreamProxy;
	Transport::PresenceOracle* presenceOracle;
	SOCKS5BytestreamServer *bytestreamServer;
};
}
 |