Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(806)

Side by Side Diff: trunk/src/ppapi/thunk/ppb_url_loader_thunk.cc

Issue 14195008: Revert 194613 "Pepper: Autogenerate thunk for PPB_URL_Loader." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // From ppb_url_loader.idl modified Wed Apr 17 10:03:38 2013.
6
7 #include <string.h>
8
9 #include "ppapi/c/pp_completion_callback.h" 5 #include "ppapi/c/pp_completion_callback.h"
10 #include "ppapi/c/pp_errors.h" 6 #include "ppapi/c/pp_errors.h"
11 #include "ppapi/c/ppb_url_loader.h"
12 #include "ppapi/shared_impl/tracked_callback.h" 7 #include "ppapi/shared_impl/tracked_callback.h"
13 #include "ppapi/thunk/enter.h" 8 #include "ppapi/thunk/enter.h"
14 #include "ppapi/thunk/ppb_instance_api.h" 9 #include "ppapi/thunk/thunk.h"
15 #include "ppapi/thunk/ppb_url_loader_api.h" 10 #include "ppapi/thunk/ppb_url_loader_api.h"
16 #include "ppapi/thunk/resource_creation_api.h" 11 #include "ppapi/thunk/resource_creation_api.h"
17 #include "ppapi/thunk/thunk.h"
18 12
19 namespace ppapi { 13 namespace ppapi {
20 namespace thunk { 14 namespace thunk {
21 15
22 namespace { 16 namespace {
23 17
18 typedef EnterResource<PPB_URLLoader_API> EnterURLLoader;
19
24 PP_Resource Create(PP_Instance instance) { 20 PP_Resource Create(PP_Instance instance) {
25 VLOG(4) << "PPB_URLLoader::Create()";
26 EnterResourceCreation enter(instance); 21 EnterResourceCreation enter(instance);
27 if (enter.failed()) 22 if (enter.failed())
28 return 0; 23 return 0;
29 return enter.functions()->CreateURLLoader(instance); 24 return enter.functions()->CreateURLLoader(instance);
30 } 25 }
31 26
32 PP_Bool IsURLLoader(PP_Resource resource) { 27 PP_Bool IsURLLoader(PP_Resource resource) {
33 VLOG(4) << "PPB_URLLoader::IsURLLoader()"; 28 EnterURLLoader enter(resource, false);
34 EnterResource<PPB_URLLoader_API> enter(resource, false);
35 return PP_FromBool(enter.succeeded()); 29 return PP_FromBool(enter.succeeded());
36 } 30 }
37 31
38 int32_t Open(PP_Resource loader, 32 int32_t Open(PP_Resource loader,
39 PP_Resource request_info, 33 PP_Resource request_id,
40 struct PP_CompletionCallback callback) { 34 PP_CompletionCallback callback) {
41 VLOG(4) << "PPB_URLLoader::Open()"; 35 EnterURLLoader enter(loader, callback, true);
42 EnterResource<PPB_URLLoader_API> enter(loader, callback, true);
43 if (enter.failed()) 36 if (enter.failed())
44 return enter.retval(); 37 return enter.retval();
45 return enter.SetResult(enter.object()->Open(request_info, enter.callback())); 38 return enter.SetResult(enter.object()->Open(request_id, enter.callback()));
46 } 39 }
47 40
48 int32_t FollowRedirect(PP_Resource loader, 41 int32_t FollowRedirect(PP_Resource loader,
49 struct PP_CompletionCallback callback) { 42 PP_CompletionCallback callback) {
50 VLOG(4) << "PPB_URLLoader::FollowRedirect()"; 43 EnterURLLoader enter(loader, callback, true);
51 EnterResource<PPB_URLLoader_API> enter(loader, callback, true);
52 if (enter.failed()) 44 if (enter.failed())
53 return enter.retval(); 45 return enter.retval();
54 return enter.SetResult(enter.object()->FollowRedirect(enter.callback())); 46 return enter.SetResult(enter.object()->FollowRedirect(enter.callback()));
55 } 47 }
56 48
57 PP_Bool GetUploadProgress(PP_Resource loader, 49 PP_Bool GetUploadProgress(PP_Resource loader,
58 int64_t* bytes_sent, 50 int64_t* bytes_sent,
59 int64_t* total_bytes_to_be_sent) { 51 int64_t* total_bytes_to_be_sent) {
60 VLOG(4) << "PPB_URLLoader::GetUploadProgress()"; 52 EnterURLLoader enter(loader, true);
61 EnterResource<PPB_URLLoader_API> enter(loader, true);
62 if (enter.failed()) { 53 if (enter.failed()) {
63 memset(bytes_sent, 0, sizeof(bytes_sent)); 54 *bytes_sent = 0;
64 memset(total_bytes_to_be_sent, 0, sizeof(total_bytes_to_be_sent)); 55 *total_bytes_to_be_sent = 0;
65 return PP_FALSE; 56 return PP_FALSE;
66 } 57 }
67 return enter.object()->GetUploadProgress(bytes_sent, total_bytes_to_be_sent); 58 return enter.object()->GetUploadProgress(bytes_sent,
59 total_bytes_to_be_sent);
68 } 60 }
69 61
70 PP_Bool GetDownloadProgress(PP_Resource loader, 62 PP_Bool GetDownloadProgress(PP_Resource loader,
71 int64_t* bytes_received, 63 int64_t* bytes_received,
72 int64_t* total_bytes_to_be_received) { 64 int64_t* total_bytes_to_be_received) {
73 VLOG(4) << "PPB_URLLoader::GetDownloadProgress()"; 65 EnterURLLoader enter(loader, true);
74 EnterResource<PPB_URLLoader_API> enter(loader, true);
75 if (enter.failed()) { 66 if (enter.failed()) {
76 memset(bytes_received, 0, sizeof(bytes_received)); 67 *bytes_received = 0;
77 memset(total_bytes_to_be_received, 0, sizeof(total_bytes_to_be_received)); 68 *total_bytes_to_be_received = 0;
78 return PP_FALSE; 69 return PP_FALSE;
79 } 70 }
80 return enter.object()->GetDownloadProgress(bytes_received, 71 return enter.object()->GetDownloadProgress(bytes_received,
81 total_bytes_to_be_received); 72 total_bytes_to_be_received);
82 } 73 }
83 74
84 PP_Resource GetResponseInfo(PP_Resource loader) { 75 PP_Resource GetResponseInfo(PP_Resource loader) {
85 VLOG(4) << "PPB_URLLoader::GetResponseInfo()"; 76 EnterURLLoader enter(loader, true);
86 EnterResource<PPB_URLLoader_API> enter(loader, true);
87 if (enter.failed()) 77 if (enter.failed())
88 return 0; 78 return 0;
89 return enter.object()->GetResponseInfo(); 79 return enter.object()->GetResponseInfo();
90 } 80 }
91 81
92 int32_t ReadResponseBody(PP_Resource loader, 82 int32_t ReadResponseBody(PP_Resource loader,
93 void* buffer, 83 void* buffer,
94 int32_t bytes_to_read, 84 int32_t bytes_to_read,
95 struct PP_CompletionCallback callback) { 85 PP_CompletionCallback callback) {
96 VLOG(4) << "PPB_URLLoader::ReadResponseBody()"; 86 EnterURLLoader enter(loader, callback, true);
97 EnterResource<PPB_URLLoader_API> enter(loader, callback, true);
98 if (enter.failed()) 87 if (enter.failed())
99 return enter.retval(); 88 return enter.retval();
100 return enter.SetResult(enter.object()->ReadResponseBody(buffer, 89 return enter.SetResult(enter.object()->ReadResponseBody(buffer, bytes_to_read,
101 bytes_to_read,
102 enter.callback())); 90 enter.callback()));
103 } 91 }
104 92
105 int32_t FinishStreamingToFile(PP_Resource loader, 93 int32_t FinishStreamingToFile(PP_Resource loader,
106 struct PP_CompletionCallback callback) { 94 PP_CompletionCallback callback) {
107 VLOG(4) << "PPB_URLLoader::FinishStreamingToFile()"; 95 EnterURLLoader enter(loader, callback, true);
108 EnterResource<PPB_URLLoader_API> enter(loader, callback, true);
109 if (enter.failed()) 96 if (enter.failed())
110 return enter.retval(); 97 return enter.retval();
111 return enter.SetResult(enter.object()->FinishStreamingToFile( 98 return enter.SetResult(
112 enter.callback())); 99 enter.object()->FinishStreamingToFile(enter.callback()));
113 } 100 }
114 101
115 void Close(PP_Resource loader) { 102 void Close(PP_Resource loader) {
116 VLOG(4) << "PPB_URLLoader::Close()"; 103 EnterURLLoader enter(loader, true);
117 EnterResource<PPB_URLLoader_API> enter(loader, true);
118 if (enter.succeeded()) 104 if (enter.succeeded())
119 enter.object()->Close(); 105 enter.object()->Close();
120 } 106 }
121 107
122 const PPB_URLLoader_1_0 g_ppb_urlloader_thunk_1_0 = { 108 void GrantUniversalAccess(PP_Resource loader) {
109 EnterURLLoader enter(loader, true);
110 if (enter.succeeded())
111 enter.object()->GrantUniversalAccess();
112 }
113
114 void SetStatusCallback(PP_Resource loader,
115 PP_URLLoaderTrusted_StatusCallback cb) {
116 EnterURLLoader enter(loader, true);
117 if (enter.succeeded())
118 enter.object()->SetStatusCallback(cb);
119 }
120
121 const PPB_URLLoader g_ppb_urlloader_thunk = {
123 &Create, 122 &Create,
124 &IsURLLoader, 123 &IsURLLoader,
125 &Open, 124 &Open,
126 &FollowRedirect, 125 &FollowRedirect,
127 &GetUploadProgress, 126 &GetUploadProgress,
128 &GetDownloadProgress, 127 &GetDownloadProgress,
129 &GetResponseInfo, 128 &GetResponseInfo,
130 &ReadResponseBody, 129 &ReadResponseBody,
131 &FinishStreamingToFile, 130 &FinishStreamingToFile,
132 &Close 131 &Close
133 }; 132 };
134 133
134 const PPB_URLLoaderTrusted g_ppb_urlloader_trusted_thunk = {
135 &GrantUniversalAccess,
136 &SetStatusCallback
137 };
138
135 } // namespace 139 } // namespace
136 140
137 const PPB_URLLoader_1_0* GetPPB_URLLoader_1_0_Thunk() { 141 const PPB_URLLoader_1_0* GetPPB_URLLoader_1_0_Thunk() {
138 return &g_ppb_urlloader_thunk_1_0; 142 return &g_ppb_urlloader_thunk;
143 }
144
145 const PPB_URLLoaderTrusted_0_3* GetPPB_URLLoaderTrusted_0_3_Thunk() {
146 return &g_ppb_urlloader_trusted_thunk;
139 } 147 }
140 148
141 } // namespace thunk 149 } // namespace thunk
142 } // namespace ppapi 150 } // namespace ppapi
OLDNEW
« no previous file with comments | « trunk/src/ppapi/thunk/ppb_url_loader_api.h ('k') | trunk/src/ppapi/thunk/ppb_url_loader_trusted_thunk.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698