diff options
author | ygorshenin@chromium.org <ygorshenin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-12 12:50:46 +0000 |
---|---|---|
committer | ygorshenin@chromium.org <ygorshenin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-02-12 12:50:46 +0000 |
commit | 6a68537cb2c5f7458c41829234aafe5bae466892 (patch) | |
tree | 4e083ab4e39e351fbedd376196612fb650f7d45e /ppapi/shared_impl/private | |
parent | 01e74f584c59c1e56582c486d70bb025e40ec527 (diff) | |
download | chromium_src-6a68537cb2c5f7458c41829234aafe5bae466892.zip chromium_src-6a68537cb2c5f7458c41829234aafe5bae466892.tar.gz chromium_src-6a68537cb2c5f7458c41829234aafe5bae466892.tar.bz2 |
PPB_HostResolver_Private is switched to the new Pepper proxy.
Blocked on https://chromiumcodereview.appspot.com/11434042.
BUG=163861
TEST=browser_tests:*HostResolverPrivate*
Review URL: https://chromiumcodereview.appspot.com/11411357
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@181908 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/shared_impl/private')
-rw-r--r-- | ppapi/shared_impl/private/ppb_host_resolver_shared.cc | 99 | ||||
-rw-r--r-- | ppapi/shared_impl/private/ppb_host_resolver_shared.h | 76 |
2 files changed, 0 insertions, 175 deletions
diff --git a/ppapi/shared_impl/private/ppb_host_resolver_shared.cc b/ppapi/shared_impl/private/ppb_host_resolver_shared.cc deleted file mode 100644 index ba026dc..0000000 --- a/ppapi/shared_impl/private/ppb_host_resolver_shared.cc +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "ppapi/shared_impl/private/ppb_host_resolver_shared.h" - -#include <cstddef> -#include <cstring> - -#include "base/memory/scoped_ptr.h" -#include "ppapi/c/pp_errors.h" -#include "ppapi/shared_impl/private/net_address_private_impl.h" -#include "ppapi/shared_impl/var.h" -#include "ppapi/thunk/thunk.h" - -namespace ppapi { - -PPB_HostResolver_Shared::PPB_HostResolver_Shared(PP_Instance instance) - : Resource(OBJECT_IS_IMPL, instance), - host_resolver_id_(GenerateHostResolverID()) { -} - -PPB_HostResolver_Shared::PPB_HostResolver_Shared( - const HostResource& resource) - : Resource(OBJECT_IS_PROXY, resource), - host_resolver_id_(GenerateHostResolverID()) { -} - -PPB_HostResolver_Shared::~PPB_HostResolver_Shared() { -} - -thunk::PPB_HostResolver_Private_API* -PPB_HostResolver_Shared::AsPPB_HostResolver_Private_API() { - return this; -} - -int32_t PPB_HostResolver_Shared::Resolve( - const char* host, - uint16_t port, - const PP_HostResolver_Private_Hint* hint, - scoped_refptr<TrackedCallback> callback) { - if (!host) - return PP_ERROR_BADARGUMENT; - if (ResolveInProgress()) - return PP_ERROR_INPROGRESS; - - resolve_callback_ = callback; - - HostPortPair host_port; - host_port.host = host; - host_port.port = port; - - SendResolve(host_port, hint); - return PP_OK_COMPLETIONPENDING; -} - -PP_Var PPB_HostResolver_Shared::GetCanonicalName() { - return StringVar::StringToPPVar(canonical_name_); -} - -uint32_t PPB_HostResolver_Shared::GetSize() { - if (ResolveInProgress()) - return 0; - return static_cast<uint32_t>(net_address_list_.size()); -} - -bool PPB_HostResolver_Shared::GetNetAddress(uint32 index, - PP_NetAddress_Private* address) { - if (ResolveInProgress() || index >= GetSize()) - return false; - *address = net_address_list_[index]; - return true; -} - -void PPB_HostResolver_Shared::OnResolveCompleted( - bool succeeded, - const std::string& canonical_name, - const std::vector<PP_NetAddress_Private>& net_address_list) { - if (succeeded) { - canonical_name_ = canonical_name; - net_address_list_ = net_address_list; - } else { - canonical_name_.clear(); - net_address_list_.clear(); - } - - resolve_callback_->Run(succeeded ? PP_OK : PP_ERROR_FAILED); -} - -uint32 PPB_HostResolver_Shared::GenerateHostResolverID() { - static uint32 host_resolver_id = 0; - return host_resolver_id++; -} - -bool PPB_HostResolver_Shared::ResolveInProgress() const { - return TrackedCallback::IsPending(resolve_callback_); -} - -} // namespace ppapi diff --git a/ppapi/shared_impl/private/ppb_host_resolver_shared.h b/ppapi/shared_impl/private/ppb_host_resolver_shared.h deleted file mode 100644 index 7372dc5..0000000 --- a/ppapi/shared_impl/private/ppb_host_resolver_shared.h +++ /dev/null @@ -1,76 +0,0 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef PPAPI_SHARED_IMPL_PRIVATE_PPB_HOST_RESOLVER_SHARED_H_ -#define PPAPI_SHARED_IMPL_PRIVATE_PPB_HOST_RESOLVER_SHARED_H_ - -#include <string> -#include <vector> - -#include "base/compiler_specific.h" -#include "base/memory/ref_counted.h" -#include "ppapi/shared_impl/resource.h" -#include "ppapi/shared_impl/tracked_callback.h" -#include "ppapi/thunk/ppb_host_resolver_private_api.h" - -namespace ppapi { - -struct HostPortPair { - std::string host; - uint16_t port; -}; - -class PPAPI_SHARED_EXPORT PPB_HostResolver_Shared - : public thunk::PPB_HostResolver_Private_API, - public Resource { - public: - // C-tor used in Impl case. - explicit PPB_HostResolver_Shared(PP_Instance instance); - - // C-tor used in Proxy case. - explicit PPB_HostResolver_Shared(const HostResource& resource); - - virtual ~PPB_HostResolver_Shared(); - - // Resource overrides. - virtual PPB_HostResolver_Private_API* - AsPPB_HostResolver_Private_API() OVERRIDE; - - // PPB_HostResolver_Private_API implementation. - virtual int32_t Resolve(const char* host, - uint16_t port, - const PP_HostResolver_Private_Hint* hint, - scoped_refptr<TrackedCallback> callback) OVERRIDE; - virtual PP_Var GetCanonicalName() OVERRIDE; - virtual uint32_t GetSize() OVERRIDE; - virtual bool GetNetAddress(uint32_t index, - PP_NetAddress_Private* address) OVERRIDE; - - void OnResolveCompleted( - bool succeeded, - const std::string& canonical_name, - const std::vector<PP_NetAddress_Private>& net_address_list); - - // Send functions that need to be implemented differently for the - // proxied and non-proxied derived classes. - virtual void SendResolve(const HostPortPair& host_port, - const PP_HostResolver_Private_Hint* hint) = 0; - - protected: - static uint32 GenerateHostResolverID(); - bool ResolveInProgress() const; - - const uint32 host_resolver_id_; - - scoped_refptr<TrackedCallback> resolve_callback_; - - std::string canonical_name_; - std::vector<PP_NetAddress_Private> net_address_list_; - - DISALLOW_COPY_AND_ASSIGN(PPB_HostResolver_Shared); -}; - -} // namespace ppapi - -#endif // PPAPI_SHARED_IMPL_PRIVATE_PPB_HOST_RESOLVER_SHARED_H_ |