url_response_info.cc revision 5821806d5e7f356e8fa4b058a389a808ea183019
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/cpp/url_response_info.h" 6 7#include "ppapi/cpp/file_ref.h" 8#include "ppapi/cpp/module.h" 9#include "ppapi/cpp/module_impl.h" 10 11namespace pp { 12 13namespace { 14 15template <> const char* interface_name<PPB_URLResponseInfo_1_0>() { 16 return PPB_URLRESPONSEINFO_INTERFACE_1_0; 17} 18 19} // namespace 20 21URLResponseInfo::URLResponseInfo(const URLResponseInfo& other) 22 : Resource(other) { 23} 24 25URLResponseInfo::URLResponseInfo(PassRef, PP_Resource resource) 26 : Resource(PASS_REF, resource) { 27} 28 29Var URLResponseInfo::GetProperty(PP_URLResponseProperty property) const { 30 if (!has_interface<PPB_URLResponseInfo_1_0>()) 31 return Var(); 32 return Var(PASS_REF, 33 get_interface<PPB_URLResponseInfo_1_0>()->GetProperty(pp_resource(), 34 property)); 35} 36 37FileRef URLResponseInfo::GetBodyAsFileRef() const { 38 if (!has_interface<PPB_URLResponseInfo_1_0>()) 39 return FileRef(); 40 return FileRef(PASS_REF, 41 get_interface<PPB_URLResponseInfo_1_0>()->GetBodyAsFileRef( 42 pp_resource())); 43} 44 45} // namespace pp 46