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

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

Issue 2526983002: Refactor ResourceHandler API. (Closed)
Patch Set: Response to comments Created 3 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
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/layered_resource_handler.h" 5 #include "content/browser/loader/layered_resource_handler.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "content/browser/loader/resource_controller.h"
10 11
11 namespace content { 12 namespace content {
12 13
13 LayeredResourceHandler::LayeredResourceHandler( 14 LayeredResourceHandler::LayeredResourceHandler(
14 net::URLRequest* request, 15 net::URLRequest* request,
15 std::unique_ptr<ResourceHandler> next_handler) 16 std::unique_ptr<ResourceHandler> next_handler)
16 : ResourceHandler(request), next_handler_(std::move(next_handler)) {} 17 : ResourceHandler(request), next_handler_(std::move(next_handler)) {}
17 18
18 LayeredResourceHandler::~LayeredResourceHandler() { 19 LayeredResourceHandler::~LayeredResourceHandler() {
19 } 20 }
20 21
21 void LayeredResourceHandler::SetController(ResourceController* controller) { 22 void LayeredResourceHandler::SetDelegate(Delegate* delegate) {
22 ResourceHandler::SetController(controller); 23 ResourceHandler::SetDelegate(delegate);
23 24 next_handler_->SetDelegate(delegate);
24 // Pass the controller down to the next handler. This method is intended to
25 // be overriden by subclasses of LayeredResourceHandler that need to insert a
26 // different ResourceController.
27
28 DCHECK(next_handler_.get());
29 next_handler_->SetController(controller);
30 } 25 }
31 26
32 bool LayeredResourceHandler::OnRequestRedirected( 27 void LayeredResourceHandler::OnRequestRedirected(
33 const net::RedirectInfo& redirect_info, 28 const net::RedirectInfo& redirect_info,
34 ResourceResponse* response, 29 ResourceResponse* response,
35 bool* defer) { 30 std::unique_ptr<ResourceController> controller) {
36 DCHECK(next_handler_.get()); 31 DCHECK(next_handler_.get());
37 return next_handler_->OnRequestRedirected(redirect_info, response, defer); 32 next_handler_->OnRequestRedirected(redirect_info, response,
33 std::move(controller));
38 } 34 }
39 35
40 bool LayeredResourceHandler::OnResponseStarted(ResourceResponse* response, 36 void LayeredResourceHandler::OnResponseStarted(
41 bool* defer) { 37 ResourceResponse* response,
38 std::unique_ptr<ResourceController> controller) {
42 DCHECK(next_handler_.get()); 39 DCHECK(next_handler_.get());
43 return next_handler_->OnResponseStarted(response, defer); 40 next_handler_->OnResponseStarted(response, std::move(controller));
44 } 41 }
45 42
46 bool LayeredResourceHandler::OnWillStart(const GURL& url, 43 void LayeredResourceHandler::OnWillStart(
47 bool* defer) { 44 const GURL& url,
45 std::unique_ptr<ResourceController> controller) {
48 DCHECK(next_handler_.get()); 46 DCHECK(next_handler_.get());
49 return next_handler_->OnWillStart(url, defer); 47 next_handler_->OnWillStart(url, std::move(controller));
50 } 48 }
51 49
52 bool LayeredResourceHandler::OnWillRead(scoped_refptr<net::IOBuffer>* buf, 50 bool LayeredResourceHandler::OnWillRead(scoped_refptr<net::IOBuffer>* buf,
53 int* buf_size, 51 int* buf_size,
54 int min_size) { 52 int min_size) {
55 DCHECK(next_handler_.get()); 53 DCHECK(next_handler_.get());
56 return next_handler_->OnWillRead(buf, buf_size, min_size); 54 return next_handler_->OnWillRead(buf, buf_size, min_size);
57 } 55 }
58 56
59 bool LayeredResourceHandler::OnReadCompleted(int bytes_read, bool* defer) { 57 void LayeredResourceHandler::OnReadCompleted(
58 int bytes_read,
59 std::unique_ptr<ResourceController> controller) {
60 DCHECK(next_handler_.get()); 60 DCHECK(next_handler_.get());
61 return next_handler_->OnReadCompleted(bytes_read, defer); 61 next_handler_->OnReadCompleted(bytes_read, std::move(controller));
62 } 62 }
63 63
64 void LayeredResourceHandler::OnResponseCompleted( 64 void LayeredResourceHandler::OnResponseCompleted(
65 const net::URLRequestStatus& status, 65 const net::URLRequestStatus& status,
66 bool* defer) { 66 std::unique_ptr<ResourceController> controller) {
67 DCHECK(next_handler_.get()); 67 DCHECK(next_handler_.get());
68 next_handler_->OnResponseCompleted(status, defer); 68 next_handler_->OnResponseCompleted(status, std::move(controller));
69 } 69 }
70 70
71 void LayeredResourceHandler::OnDataDownloaded(int bytes_downloaded) { 71 void LayeredResourceHandler::OnDataDownloaded(int bytes_downloaded) {
72 DCHECK(next_handler_.get()); 72 DCHECK(next_handler_.get());
73 next_handler_->OnDataDownloaded(bytes_downloaded); 73 next_handler_->OnDataDownloaded(bytes_downloaded);
74 } 74 }
75 75
76 } // namespace content 76 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/loader/layered_resource_handler.h ('k') | content/browser/loader/mime_sniffing_resource_handler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698