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

Side by Side Diff: content/browser/loader/stream_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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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/stream_resource_handler.h" 5 #include "content/browser/loader/stream_resource_handler.h"
6 6
7 #include "base/bind.h"
7 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "content/browser/loader/resource_controller.h"
8 #include "net/url_request/url_request_status.h" 10 #include "net/url_request/url_request_status.h"
9 11
10 namespace content { 12 namespace content {
11 13
12 StreamResourceHandler::StreamResourceHandler(net::URLRequest* request, 14 StreamResourceHandler::StreamResourceHandler(net::URLRequest* request,
13 StreamRegistry* registry, 15 StreamRegistry* registry,
14 const GURL& origin) 16 const GURL& origin)
15 : ResourceHandler(request) { 17 : ResourceHandler(request) {
16 writer_.InitializeStream(registry, origin); 18 writer_.InitializeStream(registry, origin,
19 base::Bind(&StreamResourceHandler::OutOfBandCancel,
20 base::Unretained(this), net::ERR_ABORTED,
21 true /* tell_renderer */));
17 } 22 }
18 23
19 StreamResourceHandler::~StreamResourceHandler() { 24 StreamResourceHandler::~StreamResourceHandler() {
20 } 25 }
21 26
22 void StreamResourceHandler::SetController(ResourceController* controller) { 27 void StreamResourceHandler::OnRequestRedirected(
23 writer_.set_controller(controller); 28 const net::RedirectInfo& redirect_info,
24 ResourceHandler::SetController(controller); 29 ResourceResponse* resp,
30 std::unique_ptr<ResourceController> controller) {
31 controller->Resume();
25 } 32 }
26 33
27 bool StreamResourceHandler::OnRequestRedirected( 34 void StreamResourceHandler::OnResponseStarted(
28 const net::RedirectInfo& redirect_info,
29 ResourceResponse* resp, 35 ResourceResponse* resp,
30 bool* defer) { 36 std::unique_ptr<ResourceController> controller) {
31 return true; 37 controller->Resume();
32 } 38 }
33 39
34 bool StreamResourceHandler::OnResponseStarted(ResourceResponse* resp, 40 void StreamResourceHandler::OnWillStart(
35 bool* defer) { 41 const GURL& url,
36 return true; 42 std::unique_ptr<ResourceController> controller) {
37 } 43 controller->Resume();
38
39 bool StreamResourceHandler::OnWillStart(const GURL& url, bool* defer) {
40 return true;
41 } 44 }
42 45
43 bool StreamResourceHandler::OnWillRead(scoped_refptr<net::IOBuffer>* buf, 46 bool StreamResourceHandler::OnWillRead(scoped_refptr<net::IOBuffer>* buf,
44 int* buf_size, 47 int* buf_size,
45 int min_size) { 48 int min_size) {
46 writer_.OnWillRead(buf, buf_size, min_size); 49 writer_.OnWillRead(buf, buf_size, min_size);
47 return true; 50 return true;
48 } 51 }
49 52
50 bool StreamResourceHandler::OnReadCompleted(int bytes_read, bool* defer) { 53 void StreamResourceHandler::OnReadCompleted(
51 writer_.OnReadCompleted(bytes_read, defer); 54 int bytes_read,
52 return true; 55 std::unique_ptr<ResourceController> controller) {
56 writer_.OnReadCompleted(bytes_read,
57 base::Bind(&ResourceController::Resume,
58 base::Passed(std::move(controller))));
53 } 59 }
54 60
55 void StreamResourceHandler::OnResponseCompleted( 61 void StreamResourceHandler::OnResponseCompleted(
56 const net::URLRequestStatus& status, 62 const net::URLRequestStatus& status,
57 bool* defer) { 63 std::unique_ptr<ResourceController> controller) {
58 writer_.Finalize(status.error()); 64 writer_.Finalize(status.error());
65 controller->Resume();
59 } 66 }
60 67
61 void StreamResourceHandler::OnDataDownloaded(int bytes_downloaded) { 68 void StreamResourceHandler::OnDataDownloaded(int bytes_downloaded) {
62 NOTREACHED(); 69 NOTREACHED();
63 } 70 }
64 71
65 } // namespace content 72 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/loader/stream_resource_handler.h ('k') | content/browser/loader/stream_writer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698