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

Side by Side Diff: net/http/failing_http_transaction_factory.cc

Issue 992733002: Remove //net (except for Android test stuff) and sdch (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 9 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
« no previous file with comments | « net/http/failing_http_transaction_factory.h ('k') | net/http/http_auth.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "net/http/failing_http_transaction_factory.h"
6
7 #include "base/bind.h"
8 #include "base/compiler_specific.h"
9 #include "base/logging.h"
10 #include "base/message_loop/message_loop.h"
11 #include "net/base/load_timing_info.h"
12 #include "net/base/upload_progress.h"
13
14 namespace net {
15
16 class AuthCredentials;
17 class BoundNetLog;
18 class HttpRequestHeaders;
19 class IOBuffer;
20 class X509Certificate;
21
22 struct HttpRequestInfo;
23
24 namespace {
25
26 // A simple class to interpose between the cache and network http layers.
27 // These transactions can be generated by the FailingHttpTransactionFactory
28 // to test interactions between cache and network.
29 class FailingHttpTransaction : public HttpTransaction {
30 public:
31 explicit FailingHttpTransaction(Error error);
32 ~FailingHttpTransaction() override;
33
34 // HttpTransaction
35 int Start(const HttpRequestInfo* request_info,
36 const CompletionCallback& callback,
37 const BoundNetLog& net_log) override;
38 int RestartIgnoringLastError(const CompletionCallback& callback) override;
39 int RestartWithCertificate(X509Certificate* client_cert,
40 const CompletionCallback& callback) override;
41 int RestartWithAuth(const AuthCredentials& credentials,
42 const CompletionCallback& callback) override;
43 bool IsReadyToRestartForAuth() override;
44 int Read(IOBuffer* buf,
45 int buf_len,
46 const CompletionCallback& callback) override;
47 void StopCaching() override;
48 bool GetFullRequestHeaders(HttpRequestHeaders* headers) const override;
49 int64 GetTotalReceivedBytes() const override;
50 void DoneReading() override;
51 const HttpResponseInfo* GetResponseInfo() const override;
52 LoadState GetLoadState() const override;
53 UploadProgress GetUploadProgress() const override;
54 void SetQuicServerInfo(net::QuicServerInfo* quic_server_info) override;
55 bool GetLoadTimingInfo(LoadTimingInfo* load_timing_info) const override;
56 void SetPriority(RequestPriority priority) override;
57 void SetWebSocketHandshakeStreamCreateHelper(
58 WebSocketHandshakeStreamBase::CreateHelper* create_helper) override;
59 void SetBeforeNetworkStartCallback(
60 const BeforeNetworkStartCallback& callback) override;
61 void SetBeforeProxyHeadersSentCallback(
62 const BeforeProxyHeadersSentCallback& callback) override;
63 int ResumeNetworkStart() override;
64
65 private:
66 Error error_;
67 };
68
69 FailingHttpTransaction::FailingHttpTransaction(Error error) : error_(error) {
70 DCHECK_LT(error, OK);
71 }
72
73 FailingHttpTransaction::~FailingHttpTransaction() {}
74
75 int FailingHttpTransaction::Start(const HttpRequestInfo* request_info,
76 const CompletionCallback& callback,
77 const BoundNetLog& net_log) {
78 base::MessageLoop::current()->PostTask(
79 FROM_HERE, base::Bind(callback, error_));
80 return ERR_IO_PENDING;
81 }
82
83 int FailingHttpTransaction::RestartIgnoringLastError(
84 const CompletionCallback& callback) {
85 return ERR_FAILED;
86 }
87
88 int FailingHttpTransaction::RestartWithCertificate(
89 X509Certificate* client_cert,
90 const CompletionCallback& callback) {
91 return ERR_FAILED;
92 }
93
94 int FailingHttpTransaction::RestartWithAuth(
95 const AuthCredentials& credentials,
96 const CompletionCallback& callback) {
97 return ERR_FAILED;
98 }
99
100 bool FailingHttpTransaction::IsReadyToRestartForAuth() {
101 return false;
102 }
103
104 int FailingHttpTransaction::Read(IOBuffer* buf, int buf_len,
105 const CompletionCallback& callback) {
106 NOTREACHED();
107 return ERR_FAILED;
108 }
109
110 void FailingHttpTransaction::StopCaching() {}
111
112 bool FailingHttpTransaction::GetFullRequestHeaders(
113 HttpRequestHeaders* headers) const {
114 return false;
115 }
116
117 int64 FailingHttpTransaction::GetTotalReceivedBytes() const {
118 return 0;
119 }
120
121 void FailingHttpTransaction::DoneReading() {
122 NOTREACHED();
123 }
124
125 const HttpResponseInfo* FailingHttpTransaction::GetResponseInfo() const {
126 return NULL;
127 }
128
129 LoadState FailingHttpTransaction::GetLoadState() const {
130 return LOAD_STATE_IDLE;
131 }
132
133 UploadProgress FailingHttpTransaction::GetUploadProgress() const {
134 return UploadProgress();
135 }
136
137 void FailingHttpTransaction::SetQuicServerInfo(
138 net::QuicServerInfo* quic_server_info) {}
139
140 bool FailingHttpTransaction::GetLoadTimingInfo(
141 LoadTimingInfo* load_timing_info) const {
142 return false;
143 }
144
145 void FailingHttpTransaction::SetPriority(RequestPriority priority) {}
146
147 void FailingHttpTransaction::SetWebSocketHandshakeStreamCreateHelper(
148 WebSocketHandshakeStreamBase::CreateHelper* create_helper) {
149 NOTREACHED();
150 }
151
152 void FailingHttpTransaction::SetBeforeNetworkStartCallback(
153 const BeforeNetworkStartCallback& callback) {
154 }
155
156 void FailingHttpTransaction::SetBeforeProxyHeadersSentCallback(
157 const BeforeProxyHeadersSentCallback& callback) {
158 }
159
160 int FailingHttpTransaction::ResumeNetworkStart() {
161 NOTREACHED();
162 return ERR_FAILED;
163 }
164
165 } // namespace
166
167 FailingHttpTransactionFactory::FailingHttpTransactionFactory(
168 HttpNetworkSession* session,
169 Error error) : session_(session), error_(error) {
170 DCHECK_LT(error, OK);
171 }
172
173 FailingHttpTransactionFactory::~FailingHttpTransactionFactory() {}
174
175 // HttpTransactionFactory:
176 int FailingHttpTransactionFactory::CreateTransaction(
177 RequestPriority priority,
178 scoped_ptr<HttpTransaction>* trans) {
179 trans->reset(new FailingHttpTransaction(error_));
180 return OK;
181 }
182
183 HttpCache* FailingHttpTransactionFactory::GetCache() {
184 return NULL;
185 }
186
187 HttpNetworkSession* FailingHttpTransactionFactory::GetSession() {
188 return session_;
189 }
190
191 } // namespace net
192
OLDNEW
« no previous file with comments | « net/http/failing_http_transaction_factory.h ('k') | net/http/http_auth.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698