summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.h')
-rw-r--r--Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.h b/Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.h
index c5ad72a..1c24497 100644
--- a/Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.h
+++ b/Swiften/FileTransfer/SOCKS5BytestreamProxyFinder.h
@@ -15,11 +15,10 @@
15 15
16#include <boost/shared_ptr.hpp> 16#include <boost/shared_ptr.hpp>
17 17
18#include <Swiften/Base/API.h> 18#include <Swiften/Base/API.h>
19#include <Swiften/Disco/DiscoServiceWalker.h> 19#include <Swiften/Disco/DiscoServiceWalker.h>
20#include <Swiften/Network/HostAddressPort.h>
21#include <Swiften/Elements/S5BProxyRequest.h> 20#include <Swiften/Elements/S5BProxyRequest.h>
22 21
23namespace Swift { 22namespace Swift {
24 23
25class JID; 24class JID;
@@ -35,20 +34,23 @@ class SWIFTEN_API SOCKS5BytestreamProxyFinder {
35 ~SOCKS5BytestreamProxyFinder(); 34 ~SOCKS5BytestreamProxyFinder();
36 35
37 void start(); 36 void start();
38 void stop(); 37 void stop();
39 38
40 boost::signal<void(boost::shared_ptr<S5BProxyRequest>)> onProxyFound; 39 boost::signal<void(std::vector<boost::shared_ptr<S5BProxyRequest> >)> onProxiesFound;
41 40
42 private: 41 private:
43 void sendBytestreamQuery(const JID&); 42 void sendBytestreamQuery(const JID&);
44 43
45 void handleServiceFound(const JID&, boost::shared_ptr<DiscoInfo>); 44 void handleServiceFound(const JID&, boost::shared_ptr<DiscoInfo>);
46 void handleProxyResponse(boost::shared_ptr<S5BProxyRequest>, ErrorPayload::ref); 45 void handleProxyResponse(boost::shared_ptr<GenericRequest<S5BProxyRequest> > requester, boost::shared_ptr<S5BProxyRequest>, ErrorPayload::ref);
46 void handleWalkEnded();
47
47 private: 48 private:
48 JID service; 49 JID service;
49 IQRouter* iqRouter; 50 IQRouter* iqRouter;
50 boost::shared_ptr<DiscoServiceWalker> serviceWalker; 51 boost::shared_ptr<DiscoServiceWalker> serviceWalker;
51 std::vector<boost::shared_ptr<GenericRequest<S5BProxyRequest> > > requests; 52 std::vector<S5BProxyRequest::ref> proxyHosts;
52 }; 53 std::set<boost::shared_ptr<GenericRequest<S5BProxyRequest> > > pendingRequests;
54};
53 55
54} 56}