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 // From ppb_url_response_info.idl modified Tue Aug 20 08:13:36 2013. 6 7 #include "ppapi/c/pp_errors.h" 8 #include "ppapi/c/ppb_url_response_info.h" 9 #include "ppapi/shared_impl/tracked_callback.h" 10 #include "ppapi/thunk/enter.h" 11 #include "ppapi/thunk/ppapi_thunk_export.h" 12 #include "ppapi/thunk/ppb_url_response_info_api.h" 13 14 namespace ppapi { 15 namespace thunk { 16 17 namespace { 18 IsURLResponseInfo(PP_Resource resource)19PP_Bool IsURLResponseInfo(PP_Resource resource) { 20 VLOG(4) << "PPB_URLResponseInfo::IsURLResponseInfo()"; 21 EnterResource<PPB_URLResponseInfo_API> enter(resource, false); 22 return PP_FromBool(enter.succeeded()); 23 } 24 GetProperty(PP_Resource response,PP_URLResponseProperty property)25struct PP_Var GetProperty(PP_Resource response, 26 PP_URLResponseProperty property) { 27 VLOG(4) << "PPB_URLResponseInfo::GetProperty()"; 28 EnterResource<PPB_URLResponseInfo_API> enter(response, true); 29 if (enter.failed()) 30 return PP_MakeUndefined(); 31 return enter.object()->GetProperty(property); 32 } 33 GetBodyAsFileRef(PP_Resource response)34PP_Resource GetBodyAsFileRef(PP_Resource response) { 35 VLOG(4) << "PPB_URLResponseInfo::GetBodyAsFileRef()"; 36 EnterResource<PPB_URLResponseInfo_API> enter(response, true); 37 if (enter.failed()) 38 return 0; 39 return enter.object()->GetBodyAsFileRef(); 40 } 41 42 const PPB_URLResponseInfo_1_0 g_ppb_urlresponseinfo_thunk_1_0 = { 43 &IsURLResponseInfo, 44 &GetProperty, 45 &GetBodyAsFileRef 46 }; 47 48 } // namespace 49 50 PPAPI_THUNK_EXPORT const PPB_URLResponseInfo_1_0* GetPPB_URLResponseInfo_1_0_Thunk()51 GetPPB_URLResponseInfo_1_0_Thunk() { 52 return &g_ppb_urlresponseinfo_thunk_1_0; 53 } 54 55 } // namespace thunk 56 } // namespace ppapi 57