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

Side by Side Diff: content/browser/loader/resource_handler.cc

Issue 2526983002: Refactor ResourceHandler API. (Closed)
Patch Set: Fix stuff Created 4 years 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
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 #include "content/browser/loader/resource_handler.h" 5 #include "content/browser/loader/resource_handler.h"
6 6
7 #include "content/browser/loader/resource_dispatcher_host_impl.h"
7 #include "content/browser/loader/resource_request_info_impl.h" 8 #include "content/browser/loader/resource_request_info_impl.h"
8 9
9 namespace content { 10 namespace content {
10 11
11 ResourceHandler::~ResourceHandler() {} 12 ResourceHandler::~ResourceHandler() {}
12 13
13 ResourceHandler::ResourceHandler(net::URLRequest* request) 14 ResourceHandler::ResourceHandler(net::URLRequest* request)
14 : controller_(NULL), 15 : request_(request) {}
15 request_(request) { 16
17 std::unique_ptr<ResourceController> ResourceHandler::TakeController() {
18 DCHECK(controller_);
19
20 std::unique_ptr<ResourceController> controller;
21 std::swap(controller, controller_);
22 return controller;
16 } 23 }
17 24
18 void ResourceHandler::SetController(ResourceController* controller) { 25 void ResourceHandler::Resume() {
19 controller_ = controller; 26 TakeController()->Resume();
27 }
28
29 void ResourceHandler::Cancel() {
30 TakeController()->Cancel();
31 }
32
33 void ResourceHandler::CancelAndIgnore() {
34 TakeController()->CancelAndIgnore();
35 }
36
37 void ResourceHandler::CancelWithError(int error_code) {
38 TakeController()->CancelWithError(error_code);
20 } 39 }
21 40
22 ResourceRequestInfoImpl* ResourceHandler::GetRequestInfo() const { 41 ResourceRequestInfoImpl* ResourceHandler::GetRequestInfo() const {
23 return ResourceRequestInfoImpl::ForRequest(request_); 42 return ResourceRequestInfoImpl::ForRequest(request_);
24 } 43 }
25 44
26 int ResourceHandler::GetRequestID() const { 45 int ResourceHandler::GetRequestID() const {
27 return GetRequestInfo()->GetRequestID(); 46 return GetRequestInfo()->GetRequestID();
28 } 47 }
29 48
30 ResourceMessageFilter* ResourceHandler::GetFilter() const { 49 ResourceMessageFilter* ResourceHandler::GetFilter() const {
31 return GetRequestInfo()->filter(); 50 return GetRequestInfo()->filter();
32 } 51 }
33 52
53 void ResourceHandler::OutOfBandCancel() {
54 ResourceRequestInfoImpl* info = GetRequestInfo();
55 GlobalRequestID id = info->GetGlobalRequestID();
56 ResourceDispatcherHostImpl::Get()->CancelRequest(id.child_id, id.request_id);
57 }
58
34 } // namespace content 59 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698