diff options
author | sergeyu <sergeyu@chromium.org> | 2016-01-08 11:48:07 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-01-08 19:49:32 +0000 |
commit | 83f84f6963354d351d5fcd160b0eeb381058d521 (patch) | |
tree | 69a056e981df83fe7faf27aab78d683c921160d2 /remoting/client | |
parent | 923d52766e3552dfb0c9f30b8b305606a4a42c5d (diff) | |
download | chromium_src-83f84f6963354d351d5fcd160b0eeb381058d521.zip chromium_src-83f84f6963354d351d5fcd160b0eeb381058d521.tar.gz chromium_src-83f84f6963354d351d5fcd160b0eeb381058d521.tar.bz2 |
Move and rename cricket::HttpPortAllocatorBase
cricket::HttpPortAllocatorBase is used only by chromoting,
so there is no point in keeping it in webrtc. Copied it to
src/remoting/protocol and renamed it to remoting::protocol::PortAllocatorBase.
Review URL: https://codereview.chromium.org/1567123004
Cr-Commit-Position: refs/heads/master@{#368417}
Diffstat (limited to 'remoting/client')
-rw-r--r-- | remoting/client/plugin/pepper_port_allocator.cc | 50 | ||||
-rw-r--r-- | remoting/client/plugin/pepper_port_allocator.h | 19 |
2 files changed, 26 insertions, 43 deletions
diff --git a/remoting/client/plugin/pepper_port_allocator.cc b/remoting/client/plugin/pepper_port_allocator.cc index 0b28e5a..f855492 100644 --- a/remoting/client/plugin/pepper_port_allocator.cc +++ b/remoting/client/plugin/pepper_port_allocator.cc @@ -29,11 +29,10 @@ namespace { // URLLoader. Normally the response from URL loader is smaller than 1kB. const int kReadSize = 1024; -class PepperPortAllocatorSession - : public cricket::HttpPortAllocatorSessionBase { +class PepperPortAllocatorSession : public protocol::PortAllocatorSessionBase { public: PepperPortAllocatorSession( - cricket::HttpPortAllocatorBase* allocator, + protocol::PortAllocatorBase* allocator, const std::string& content_name, int component, const std::string& ice_username_fragment, @@ -44,10 +43,10 @@ class PepperPortAllocatorSession const pp::InstanceHandle& instance); ~PepperPortAllocatorSession() override; - // cricket::HttpPortAllocatorBase overrides. + // PortAllocatorBase overrides. void ConfigReady(cricket::PortConfiguration* config) override; void GetPortConfigurations() override; - void SendSessionRequest(const std::string& host, int port) override; + void SendSessionRequest(const std::string& host) override; private: void OnUrlOpened(int32_t result); @@ -60,7 +59,7 @@ class PepperPortAllocatorSession scoped_ptr<pp::URLLoader> relay_url_loader_; std::vector<char> relay_response_body_; - bool relay_response_received_; + bool relay_response_received_ = false; pp::CompletionCallbackFactory<PepperPortAllocatorSession> callback_factory_; @@ -68,7 +67,7 @@ class PepperPortAllocatorSession }; PepperPortAllocatorSession::PepperPortAllocatorSession( - cricket::HttpPortAllocatorBase* allocator, + protocol::PortAllocatorBase* allocator, const std::string& content_name, int component, const std::string& ice_username_fragment, @@ -77,23 +76,19 @@ PepperPortAllocatorSession::PepperPortAllocatorSession( const std::vector<std::string>& relay_hosts, const std::string& relay_token, const pp::InstanceHandle& instance) - : HttpPortAllocatorSessionBase(allocator, - content_name, - component, - ice_username_fragment, - ice_password, - stun_hosts, - relay_hosts, - relay_token, - std::string()), + : PortAllocatorSessionBase(allocator, + content_name, + component, + ice_username_fragment, + ice_password, + stun_hosts, + relay_hosts, + relay_token), instance_(instance), stun_hosts_(stun_hosts.begin(), stun_hosts.end()), - relay_response_received_(false), - callback_factory_(this) { -} + callback_factory_(this) {} -PepperPortAllocatorSession::~PepperPortAllocatorSession() { -} +PepperPortAllocatorSession::~PepperPortAllocatorSession() {} void PepperPortAllocatorSession::ConfigReady( cricket::PortConfiguration* config) { @@ -121,13 +116,10 @@ void PepperPortAllocatorSession::GetPortConfigurations() { TryCreateRelaySession(); } -void PepperPortAllocatorSession::SendSessionRequest( - const std::string& host, - int port) { +void PepperPortAllocatorSession::SendSessionRequest(const std::string& host) { relay_url_loader_.reset(new pp::URLLoader(instance_)); pp::URLRequestInfo request_info(instance_); - std::string url = "https://" + host + ":" + base::IntToString(port) + - GetSessionRequestUrl() + "&sn=1"; + std::string url = "https://" + host + GetSessionRequestUrl() + "&sn=1"; request_info.SetURL(url); request_info.SetMethod("GET"); std::stringstream headers; @@ -220,9 +212,7 @@ PepperPortAllocator::PepperPortAllocator( const pp::InstanceHandle& instance, scoped_ptr<rtc::NetworkManager> network_manager, scoped_ptr<rtc::PacketSocketFactory> socket_factory) - : HttpPortAllocatorBase(network_manager.get(), - socket_factory.get(), - std::string()), + : PortAllocatorBase(network_manager.get(), socket_factory.get()), instance_(instance), network_manager_(std::move(network_manager)), socket_factory_(std::move(socket_factory)) {} @@ -245,7 +235,7 @@ PepperPortAllocatorFactory::PepperPortAllocatorFactory( PepperPortAllocatorFactory::~PepperPortAllocatorFactory() {} -scoped_ptr<cricket::HttpPortAllocatorBase> +scoped_ptr<protocol::PortAllocatorBase> PepperPortAllocatorFactory::CreatePortAllocator() { return PepperPortAllocator::Create(instance_); } diff --git a/remoting/client/plugin/pepper_port_allocator.h b/remoting/client/plugin/pepper_port_allocator.h index 137a0d8..19fb03d 100644 --- a/remoting/client/plugin/pepper_port_allocator.h +++ b/remoting/client/plugin/pepper_port_allocator.h @@ -9,27 +9,20 @@ #include "base/macros.h" #include "base/memory/scoped_ptr.h" #include "ppapi/cpp/instance_handle.h" +#include "remoting/protocol/port_allocator_base.h" #include "remoting/protocol/port_allocator_factory.h" -#include "third_party/webrtc/p2p/client/httpportallocator.h" namespace remoting { -// An implementation of cricket::PortAllocator for libjingle that is -// used by the client plugin. There are two differences from -// cricket::HttpPortAllocator: -// * PepperPortAllocator uses Pepper URLLoader API when creating -// relay sessions. -// * PepperPortAllocator resolves STUN DNS names and passes IP -// addresses to BasicPortAllocator (it uses HostResolverPrivate API -// for that). This is needed because libjingle's DNS resolution -// code doesn't work in sandbox. -class PepperPortAllocator : public cricket::HttpPortAllocatorBase { +// An implementation of cricket::PortAllocator for libjingle that is used by the +// client plugin. It uses Pepper URLLoader API when creating relay sessions. +class PepperPortAllocator : public protocol::PortAllocatorBase { public: static scoped_ptr<PepperPortAllocator> Create( const pp::InstanceHandle& instance); ~PepperPortAllocator() override; - // cricket::HttpPortAllocatorBase overrides. + // PortAllocatorBase overrides. cricket::PortAllocatorSession* CreateSessionInternal( const std::string& content_name, int component, @@ -55,7 +48,7 @@ class PepperPortAllocatorFactory : public protocol::PortAllocatorFactory { ~PepperPortAllocatorFactory() override; // PortAllocatorFactory interface. - scoped_ptr<cricket::HttpPortAllocatorBase> CreatePortAllocator() override; + scoped_ptr<protocol::PortAllocatorBase> CreatePortAllocator() override; private: pp::InstanceHandle instance_; |