1// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#include "ppapi/proxy/host_resolver_private_resource.h" 6 7#include "ppapi/proxy/net_address_resource.h" 8#include "ppapi/shared_impl/tracked_callback.h" 9 10namespace ppapi { 11namespace proxy { 12 13HostResolverPrivateResource::HostResolverPrivateResource(Connection connection, 14 PP_Instance instance) 15 : HostResolverResourceBase(connection, instance, true) { 16} 17 18HostResolverPrivateResource::~HostResolverPrivateResource() { 19} 20 21thunk::PPB_HostResolver_Private_API* 22HostResolverPrivateResource::AsPPB_HostResolver_Private_API() { 23 return this; 24} 25 26int32_t HostResolverPrivateResource::Resolve( 27 const char* host, 28 uint16_t port, 29 const PP_HostResolver_Private_Hint* hint, 30 scoped_refptr<TrackedCallback> callback) { 31 return ResolveImpl(host, port, hint, callback); 32} 33 34PP_Var HostResolverPrivateResource::GetCanonicalName() { 35 return GetCanonicalNameImpl(); 36} 37 38uint32_t HostResolverPrivateResource::GetSize() { 39 return GetSizeImpl(); 40} 41 42bool HostResolverPrivateResource::GetNetAddress( 43 uint32_t index, 44 PP_NetAddress_Private* address) { 45 if (!address) 46 return false; 47 48 scoped_refptr<NetAddressResource> addr_resource = GetNetAddressImpl(index); 49 if (!addr_resource.get()) 50 return false; 51 52 *address = addr_resource->GetNetAddressPrivate(); 53 return true; 54} 55 56} // namespace proxy 57} // namespace ppapi 58