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

Side by Side Diff: content/browser/loader/stream_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) 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/public/browser/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)));
17 } 21 }
18 22
19 StreamResourceHandler::~StreamResourceHandler() { 23 StreamResourceHandler::~StreamResourceHandler() {
20 } 24 }
21 25
22 void StreamResourceHandler::SetController(ResourceController* controller) { 26 void StreamResourceHandler::OnRequestRedirected(
23 writer_.set_controller(controller); 27 const net::RedirectInfo& redirect_info,
24 ResourceHandler::SetController(controller); 28 ResourceResponse* resp,
29 std::unique_ptr<ResourceController> controller) {
30 controller->Resume();
25 } 31 }
26 32
27 bool StreamResourceHandler::OnRequestRedirected( 33 void StreamResourceHandler::OnResponseStarted(
28 const net::RedirectInfo& redirect_info,
29 ResourceResponse* resp, 34 ResourceResponse* resp,
30 bool* defer) { 35 std::unique_ptr<ResourceController> controller) {
31 return true; 36 controller->Resume();
32 } 37 }
33 38
34 bool StreamResourceHandler::OnResponseStarted(ResourceResponse* resp, 39 void StreamResourceHandler::OnWillStart(
35 bool* defer) { 40 const GURL& url,
36 return true; 41 std::unique_ptr<ResourceController> controller) {
37 } 42 controller->Resume();
38
39 bool StreamResourceHandler::OnWillStart(const GURL& url, bool* defer) {
40 return true;
41 } 43 }
42 44
43 bool StreamResourceHandler::OnWillRead(scoped_refptr<net::IOBuffer>* buf, 45 bool StreamResourceHandler::OnWillRead(scoped_refptr<net::IOBuffer>* buf,
44 int* buf_size, 46 int* buf_size,
45 int min_size) { 47 int min_size) {
46 writer_.OnWillRead(buf, buf_size, min_size); 48 writer_.OnWillRead(buf, buf_size, min_size);
47 return true; 49 return true;
48 } 50 }
49 51
50 bool StreamResourceHandler::OnReadCompleted(int bytes_read, bool* defer) { 52 void StreamResourceHandler::OnReadCompleted(
51 writer_.OnReadCompleted(bytes_read, defer); 53 int bytes_read,
52 return true; 54 std::unique_ptr<ResourceController> controller) {
55 writer_.OnReadCompleted(bytes_read,
56 base::Bind(&ResourceController::Resume,
57 base::Passed(std::move(controller))));
53 } 58 }
54 59
55 void StreamResourceHandler::OnResponseCompleted( 60 void StreamResourceHandler::OnResponseCompleted(
56 const net::URLRequestStatus& status, 61 const net::URLRequestStatus& status,
57 bool* defer) { 62 std::unique_ptr<ResourceController> controller) {
58 writer_.Finalize(status.error()); 63 writer_.Finalize(status.error());
64 controller->Resume();
59 } 65 }
60 66
61 void StreamResourceHandler::OnDataDownloaded(int bytes_downloaded) { 67 void StreamResourceHandler::OnDataDownloaded(int bytes_downloaded) {
62 NOTREACHED(); 68 NOTREACHED();
63 } 69 }
64 70
65 } // namespace content 71 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698