diff options
Diffstat (limited to 'Swiften/Examples/SendFile')
-rw-r--r-- | Swiften/Examples/SendFile/ReceiveFile.cpp | 35 | ||||
-rw-r--r-- | Swiften/Examples/SendFile/SConscript | 4 | ||||
-rw-r--r-- | Swiften/Examples/SendFile/SendFile.cpp | 20 |
3 files changed, 24 insertions, 35 deletions
diff --git a/Swiften/Examples/SendFile/ReceiveFile.cpp b/Swiften/Examples/SendFile/ReceiveFile.cpp index f80f03a..c777fee 100644 --- a/Swiften/Examples/SendFile/ReceiveFile.cpp +++ b/Swiften/Examples/SendFile/ReceiveFile.cpp @@ -1,4 +1,4 @@ /* - * Copyright (c) 2010 Remko Tronçon + * Copyright (c) 2010-2013 Remko Tronçon * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. @@ -11,4 +11,5 @@ #include <Swiften/Elements/Presence.h> +#include <Swiften/Base/Log.h> #include <Swiften/Base/foreach.h> #include <Swiften/Client/Client.h> @@ -21,6 +22,4 @@ #include <Swiften/FileTransfer/FileWriteBytestream.h> #include <Swiften/Jingle/JingleSessionManager.h> -#include <Swiften/FileTransfer/DefaultLocalJingleTransportCandidateGeneratorFactory.h> -#include <Swiften/FileTransfer/DefaultRemoteJingleTransportCandidateSelectorFactory.h> #include <Swiften/FileTransfer/SOCKS5BytestreamRegistry.h> #include <Swiften/FileTransfer/FileTransferManager.h> @@ -28,8 +27,8 @@ using namespace Swift; -SimpleEventLoop eventLoop; -BoostNetworkFactories networkFactories(&eventLoop); +static SimpleEventLoop eventLoop; +static BoostNetworkFactories networkFactories(&eventLoop); -int exitCode = 2; +static int exitCode = 2; static const std::string CLIENT_NAME = "Swiften FT Test"; @@ -38,5 +37,5 @@ static const std::string CLIENT_NODE = "http://swift.im"; class FileReceiver { public: - FileReceiver(const JID& jid, const std::string& password) : jid(jid), password(password), jingleSessionManager(NULL), incomingFileTransferManager(NULL) { + FileReceiver(const JID& jid, const std::string& password) : jid(jid), password(password) { client = new Swift::Client(jid, password, &networkFactories); client->onConnected.connect(boost::bind(&FileReceiver::handleConnected, this)); @@ -65,6 +64,5 @@ class FileReceiver { private: void handleConnected() { - Swift::logging = true; - client->getFileTransferManager()->startListeningOnPort(9999); + Log::setLogLevel(Log::debug); client->getFileTransferManager()->onIncomingFileTransfer.connect(boost::bind(&FileReceiver::handleIncomingFileTransfer, this, _1)); @@ -84,7 +82,7 @@ class FileReceiver { SWIFT_LOG(debug) << "foo" << std::endl; incomingFileTransfers.push_back(transfer); - transfer->accept(boost::make_shared<FileWriteBytestream>("out")); - //transfer->onFinished.connect(boost::bind(&FileReceiver::handleFileTransferFinished, this, _1)); - //transfer->start(); + boost::shared_ptr<FileWriteBytestream> out = boost::make_shared<FileWriteBytestream>("out"); + transfer->onFinished.connect(boost::bind(&FileReceiver::handleFileTransferFinished, this, _1, out)); + transfer->accept(out); } @@ -94,7 +92,9 @@ class FileReceiver { } - /* - void handleFileTransferFinished(const boost::optional<FileTransferError>& error) { + void handleFileTransferFinished( + const boost::optional<FileTransferError>& error, + boost::shared_ptr<FileWriteBytestream> out) { std::cout << "File transfer finished" << std::endl; + out->close(); if (error) { exit(-1); @@ -103,5 +103,5 @@ class FileReceiver { exit(0); } - }*/ + } void exit(int code) { @@ -116,10 +116,5 @@ class FileReceiver { Client* client; ClientXMLTracer* tracer; - JingleSessionManager* jingleSessionManager; - IncomingFileTransferManager* incomingFileTransferManager; std::vector<IncomingFileTransfer::ref> incomingFileTransfers; - DefaultLocalJingleTransportCandidateGeneratorFactory *localFactory; - DefaultRemoteJingleTransportCandidateSelectorFactory *remoteFactory; - SOCKS5BytestreamRegistry* bytestreamRegistry; }; diff --git a/Swiften/Examples/SendFile/SConscript b/Swiften/Examples/SendFile/SConscript index d335513..e0f1256 100644 --- a/Swiften/Examples/SendFile/SConscript +++ b/Swiften/Examples/SendFile/SConscript @@ -2,6 +2,6 @@ Import("env") myenv = env.Clone() -myenv.MergeFlags(myenv["SWIFTEN_FLAGS"]) -myenv.MergeFlags(myenv["SWIFTEN_DEP_FLAGS"]) +myenv.UseFlags(myenv["SWIFTEN_FLAGS"]) +myenv.UseFlags(myenv["SWIFTEN_DEP_FLAGS"]) myenv.Program("SendFile", ["SendFile.cpp"]) diff --git a/Swiften/Examples/SendFile/SendFile.cpp b/Swiften/Examples/SendFile/SendFile.cpp index df3cea4..b056842 100644 --- a/Swiften/Examples/SendFile/SendFile.cpp +++ b/Swiften/Examples/SendFile/SendFile.cpp @@ -1,4 +1,4 @@ /* - * Copyright (c) 2010 Remko Tronçon + * Copyright (c) 2010-2013 Remko Tronçon * Licensed under the GNU General Public License v3. * See Documentation/Licenses/GPLv3.txt for more information. @@ -12,4 +12,5 @@ #include <Swiften/Client/Client.h> #include <Swiften/Elements/Presence.h> +#include <Swiften/Base/Log.h> #include <Swiften/Network/BoostTimer.h> #include <Swiften/Network/TimerFactory.h> @@ -26,9 +27,5 @@ #include <Swiften/Jingle/JingleSessionManager.h> #include <Swiften/Disco/EntityCapsManager.h> -#include <Swiften/FileTransfer/DefaultLocalJingleTransportCandidateGeneratorFactory.h> -#include <Swiften/FileTransfer/DefaultRemoteJingleTransportCandidateSelectorFactory.h> #include <Swiften/Base/ByteArray.h> -#include <Swiften/StringCodecs/MD5.h> -#include <Swiften/StringCodecs/SHA1.h> #include <Swiften/StringCodecs/Hexify.h> #include <Swiften/FileTransfer/FileTransferManager.h> @@ -36,8 +33,8 @@ using namespace Swift; -SimpleEventLoop eventLoop; -BoostNetworkFactories networkFactories(&eventLoop); +static SimpleEventLoop eventLoop; +static BoostNetworkFactories networkFactories(&eventLoop); -int exitCode = 2; +static int exitCode = 2; class FileSender { @@ -67,7 +64,6 @@ class FileSender { client->sendPresence(Presence::create()); - client->getFileTransferManager()->startListeningOnPort(19999); //ByteArray fileData; - //readByteArrayFromFile(fileData, file.string()); + //readByteArrayFromFile(fileData, file); // gather file information @@ -126,6 +122,4 @@ class FileSender { private: BoostConnectionServer::ref connectionServer; - SOCKS5BytestreamServer* socksBytestreamServer; - SOCKS5BytestreamRegistry* registry; OutgoingFileTransfer::ref outgoingFileTransfer; JID jid; @@ -146,5 +140,5 @@ int main(int argc, char* argv[]) { JID sender(argv[1]); JID recipient(argv[3]); - Swift::logging = true; + Log::setLogLevel(Log::debug); FileSender fileSender(sender, std::string(argv[2]), recipient, boost::filesystem::path(argv[4])); fileSender.start(); |