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

Side by Side Diff: ppapi/proxy/ppb_url_loader_proxy.cc

Issue 6286070: Remove all uses of the global Dispatcher Get function. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 10 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
« no previous file with comments | « ppapi/proxy/ppb_url_loader_proxy.h ('k') | ppapi/proxy/ppb_url_request_info_proxy.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #include "ppapi/proxy/ppb_url_loader_proxy.h" 5 #include "ppapi/proxy/ppb_url_loader_proxy.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "build/build_config.h" 10 #include "build/build_config.h"
(...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after
239 void Close(PP_Resource loader_id) { 239 void Close(PP_Resource loader_id) {
240 URLLoader* loader_object; 240 URLLoader* loader_object;
241 PluginDispatcher* dispatcher; 241 PluginDispatcher* dispatcher;
242 if (!RoutingDataFromURLLoader(loader_id, &loader_object, &dispatcher)) 242 if (!RoutingDataFromURLLoader(loader_id, &loader_object, &dispatcher))
243 return; 243 return;
244 244
245 dispatcher->Send(new PpapiHostMsg_PPBURLLoader_Close( 245 dispatcher->Send(new PpapiHostMsg_PPBURLLoader_Close(
246 INTERFACE_ID_PPB_URL_LOADER, loader_object->host_resource())); 246 INTERFACE_ID_PPB_URL_LOADER, loader_object->host_resource()));
247 } 247 }
248 248
249 const PPB_URLLoader ppb_urlloader = { 249 const PPB_URLLoader urlloader_interface = {
250 &Create, 250 &Create,
251 &IsURLLoader, 251 &IsURLLoader,
252 &Open, 252 &Open,
253 &FollowRedirect, 253 &FollowRedirect,
254 &GetUploadProgress, 254 &GetUploadProgress,
255 &GetDownloadProgress, 255 &GetDownloadProgress,
256 &GetResponseInfo, 256 &GetResponseInfo,
257 &ReadResponseBody, 257 &ReadResponseBody,
258 &FinishStreamingToFile, 258 &FinishStreamingToFile,
259 &Close 259 &Close
260 }; 260 };
261 261
262 InterfaceProxy* CreateURLLoaderProxy(Dispatcher* dispatcher,
263 const void* target_interface) {
264 return new PPB_URLLoader_Proxy(dispatcher, target_interface);
265 }
266
262 // Plugin URLLoaderTrusted implementation -------------------------------------- 267 // Plugin URLLoaderTrusted implementation --------------------------------------
263 268
264 void GrantUniversalAccess(PP_Resource loader_id) { 269 void GrantUniversalAccess(PP_Resource loader_id) {
265 URLLoader* loader_object; 270 URLLoader* loader_object;
266 PluginDispatcher* dispatcher; 271 PluginDispatcher* dispatcher;
267 if (!RoutingDataFromURLLoader(loader_id, &loader_object, &dispatcher)) 272 if (!RoutingDataFromURLLoader(loader_id, &loader_object, &dispatcher))
268 return; 273 return;
269 274
270 dispatcher->Send( 275 dispatcher->Send(
271 new PpapiHostMsg_PPBURLLoaderTrusted_GrantUniversalAccess( 276 new PpapiHostMsg_PPBURLLoaderTrusted_GrantUniversalAccess(
272 INTERFACE_ID_PPB_URL_LOADER_TRUSTED, loader_object->host_resource())); 277 INTERFACE_ID_PPB_URL_LOADER_TRUSTED, loader_object->host_resource()));
273 } 278 }
274 279
275 const PPB_URLLoaderTrusted ppb_urlloader_trusted = { 280 const PPB_URLLoaderTrusted urlloader_trusted_interface = {
276 &GrantUniversalAccess, 281 &GrantUniversalAccess,
277 NULL, // RegisterStatusCallback is used internally by the proxy only. 282 NULL, // RegisterStatusCallback is used internally by the proxy only.
278 }; 283 };
279 284
285 InterfaceProxy* CreateURLLoaderTrustedProxy(Dispatcher* dispatcher,
286 const void* target_interface) {
287 return new PPB_URLLoaderTrusted_Proxy(dispatcher, target_interface);
288 }
289
280 } // namespace 290 } // namespace
281 291
282 // PPB_URLLoader_Proxy --------------------------------------------------------- 292 // PPB_URLLoader_Proxy ---------------------------------------------------------
283 293
284 struct PPB_URLLoader_Proxy::ReadCallbackInfo { 294 struct PPB_URLLoader_Proxy::ReadCallbackInfo {
285 HostResource resource; 295 HostResource resource;
286 std::string read_buffer; 296 std::string read_buffer;
287 }; 297 };
288 298
289 PPB_URLLoader_Proxy::PPB_URLLoader_Proxy(Dispatcher* dispatcher, 299 PPB_URLLoader_Proxy::PPB_URLLoader_Proxy(Dispatcher* dispatcher,
290 const void* target_interface) 300 const void* target_interface)
291 : InterfaceProxy(dispatcher, target_interface), 301 : InterfaceProxy(dispatcher, target_interface),
292 callback_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) { 302 callback_factory_(ALLOW_THIS_IN_INITIALIZER_LIST(this)) {
293 } 303 }
294 304
295 PPB_URLLoader_Proxy::~PPB_URLLoader_Proxy() { 305 PPB_URLLoader_Proxy::~PPB_URLLoader_Proxy() {
296 } 306 }
297 307
298 // static 308 // static
299 PP_Resource PPB_URLLoader_Proxy::TrackPluginResource( 309 PP_Resource PPB_URLLoader_Proxy::TrackPluginResource(
300 const HostResource& url_loader_resource) { 310 const HostResource& url_loader_resource) {
301 linked_ptr<URLLoader> object(new URLLoader(url_loader_resource)); 311 linked_ptr<URLLoader> object(new URLLoader(url_loader_resource));
302 return PluginResourceTracker::GetInstance()->AddResource(object); 312 return PluginResourceTracker::GetInstance()->AddResource(object);
303 } 313 }
304 314
305 const void* PPB_URLLoader_Proxy::GetSourceInterface() const { 315 // static
306 return &ppb_urlloader; 316 const InterfaceProxy::Info* PPB_URLLoader_Proxy::GetInfo() {
307 } 317 static const Info info = {
308 318 &urlloader_interface,
309 InterfaceID PPB_URLLoader_Proxy::GetInterfaceId() const { 319 PPB_URLLOADER_INTERFACE,
310 return INTERFACE_ID_PPB_URL_LOADER; 320 INTERFACE_ID_PPB_URL_LOADER,
321 false,
322 &CreateURLLoaderProxy,
323 };
324 return &info;
311 } 325 }
312 326
313 bool PPB_URLLoader_Proxy::OnMessageReceived(const IPC::Message& msg) { 327 bool PPB_URLLoader_Proxy::OnMessageReceived(const IPC::Message& msg) {
314 bool handled = true; 328 bool handled = true;
315 IPC_BEGIN_MESSAGE_MAP(PPB_URLLoader_Proxy, msg) 329 IPC_BEGIN_MESSAGE_MAP(PPB_URLLoader_Proxy, msg)
316 IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBURLLoader_Create, 330 IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBURLLoader_Create,
317 OnMsgCreate) 331 OnMsgCreate)
318 IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBURLLoader_Open, 332 IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBURLLoader_Open,
319 OnMsgOpen) 333 OnMsgOpen)
320 IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBURLLoader_FollowRedirect, 334 IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBURLLoader_FollowRedirect,
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
483 497
484 PPB_URLLoaderTrusted_Proxy::PPB_URLLoaderTrusted_Proxy( 498 PPB_URLLoaderTrusted_Proxy::PPB_URLLoaderTrusted_Proxy(
485 Dispatcher* dispatcher, 499 Dispatcher* dispatcher,
486 const void* target_interface) 500 const void* target_interface)
487 : InterfaceProxy(dispatcher, target_interface) { 501 : InterfaceProxy(dispatcher, target_interface) {
488 } 502 }
489 503
490 PPB_URLLoaderTrusted_Proxy::~PPB_URLLoaderTrusted_Proxy() { 504 PPB_URLLoaderTrusted_Proxy::~PPB_URLLoaderTrusted_Proxy() {
491 } 505 }
492 506
493 const void* PPB_URLLoaderTrusted_Proxy::GetSourceInterface() const { 507 // static
494 return &ppb_urlloader_trusted; 508 const InterfaceProxy::Info* PPB_URLLoaderTrusted_Proxy::GetInfo() {
495 } 509 static const Info info = {
496 510 &urlloader_trusted_interface,
497 InterfaceID PPB_URLLoaderTrusted_Proxy::GetInterfaceId() const { 511 PPB_URLLOADERTRUSTED_INTERFACE,
498 return INTERFACE_ID_PPB_URL_LOADER_TRUSTED; 512 INTERFACE_ID_PPB_URL_LOADER_TRUSTED,
513 true,
514 &CreateURLLoaderTrustedProxy,
515 };
516 return &info;
499 } 517 }
500 518
501 bool PPB_URLLoaderTrusted_Proxy::OnMessageReceived(const IPC::Message& msg) { 519 bool PPB_URLLoaderTrusted_Proxy::OnMessageReceived(const IPC::Message& msg) {
502 bool handled = true; 520 bool handled = true;
503 IPC_BEGIN_MESSAGE_MAP(PPB_URLLoaderTrusted_Proxy, msg) 521 IPC_BEGIN_MESSAGE_MAP(PPB_URLLoaderTrusted_Proxy, msg)
504 IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBURLLoaderTrusted_GrantUniversalAccess, 522 IPC_MESSAGE_HANDLER(PpapiHostMsg_PPBURLLoaderTrusted_GrantUniversalAccess,
505 OnMsgGrantUniversalAccess) 523 OnMsgGrantUniversalAccess)
506 IPC_MESSAGE_UNHANDLED(handled = false) 524 IPC_MESSAGE_UNHANDLED(handled = false)
507 IPC_END_MESSAGE_MAP(); 525 IPC_END_MESSAGE_MAP();
508 // TODO(brettw) handle bad messages! 526 // TODO(brettw) handle bad messages!
509 return handled; 527 return handled;
510 } 528 }
511 529
512 void PPB_URLLoaderTrusted_Proxy::OnMsgGrantUniversalAccess( 530 void PPB_URLLoaderTrusted_Proxy::OnMsgGrantUniversalAccess(
513 const HostResource& loader) { 531 const HostResource& loader) {
514 ppb_url_loader_trusted_target()->GrantUniversalAccess(loader.host_resource()); 532 ppb_url_loader_trusted_target()->GrantUniversalAccess(loader.host_resource());
515 } 533 }
516 534
517 } // namespace proxy 535 } // namespace proxy
518 } // namespace pp 536 } // namespace pp
OLDNEW
« no previous file with comments | « ppapi/proxy/ppb_url_loader_proxy.h ('k') | ppapi/proxy/ppb_url_request_info_proxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698