OLD | NEW |
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 // This file declares HttpCache::Transaction, a private class of HttpCache so | 5 // This file declares HttpCache::Transaction, a private class of HttpCache so |
6 // it should only be included by http_cache.cc | 6 // it should only be included by http_cache.cc |
7 | 7 |
8 #ifndef NET_HTTP_HTTP_CACHE_TRANSACTION_H_ | 8 #ifndef NET_HTTP_HTTP_CACHE_TRANSACTION_H_ |
9 #define NET_HTTP_HTTP_CACHE_TRANSACTION_H_ | 9 #define NET_HTTP_HTTP_CACHE_TRANSACTION_H_ |
10 | 10 |
(...skipping 21 matching lines...) Expand all Loading... |
32 #include "net/http/partial_data.h" | 32 #include "net/http/partial_data.h" |
33 #include "net/log/net_log.h" | 33 #include "net/log/net_log.h" |
34 #include "net/socket/connection_attempts.h" | 34 #include "net/socket/connection_attempts.h" |
35 #include "net/websockets/websocket_handshake_stream_base.h" | 35 #include "net/websockets/websocket_handshake_stream_base.h" |
36 | 36 |
37 namespace net { | 37 namespace net { |
38 | 38 |
39 class PartialData; | 39 class PartialData; |
40 struct HttpRequestInfo; | 40 struct HttpRequestInfo; |
41 struct LoadTimingInfo; | 41 struct LoadTimingInfo; |
| 42 class SSLPrivateKey; |
42 | 43 |
43 // This is the transaction that is returned by the HttpCache transaction | 44 // This is the transaction that is returned by the HttpCache transaction |
44 // factory. | 45 // factory. |
45 class HttpCache::Transaction : public HttpTransaction { | 46 class HttpCache::Transaction : public HttpTransaction { |
46 public: | 47 public: |
47 // The transaction has the following modes, which apply to how it may access | 48 // The transaction has the following modes, which apply to how it may access |
48 // its cache entry. | 49 // its cache entry. |
49 // | 50 // |
50 // o If the mode of the transaction is NONE, then it is in "pass through" | 51 // o If the mode of the transaction is NONE, then it is in "pass through" |
51 // mode and all methods just forward to the inner network transaction. | 52 // mode and all methods just forward to the inner network transaction. |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
127 void FailConditionalizationForTest() { | 128 void FailConditionalizationForTest() { |
128 fail_conditionalization_for_test_ = true; | 129 fail_conditionalization_for_test_ = true; |
129 } | 130 } |
130 | 131 |
131 // HttpTransaction methods: | 132 // HttpTransaction methods: |
132 int Start(const HttpRequestInfo* request_info, | 133 int Start(const HttpRequestInfo* request_info, |
133 const CompletionCallback& callback, | 134 const CompletionCallback& callback, |
134 const BoundNetLog& net_log) override; | 135 const BoundNetLog& net_log) override; |
135 int RestartIgnoringLastError(const CompletionCallback& callback) override; | 136 int RestartIgnoringLastError(const CompletionCallback& callback) override; |
136 int RestartWithCertificate(X509Certificate* client_cert, | 137 int RestartWithCertificate(X509Certificate* client_cert, |
| 138 SSLPrivateKey* client_private_key, |
137 const CompletionCallback& callback) override; | 139 const CompletionCallback& callback) override; |
138 int RestartWithAuth(const AuthCredentials& credentials, | 140 int RestartWithAuth(const AuthCredentials& credentials, |
139 const CompletionCallback& callback) override; | 141 const CompletionCallback& callback) override; |
140 bool IsReadyToRestartForAuth() override; | 142 bool IsReadyToRestartForAuth() override; |
141 int Read(IOBuffer* buf, | 143 int Read(IOBuffer* buf, |
142 int buf_len, | 144 int buf_len, |
143 const CompletionCallback& callback) override; | 145 const CompletionCallback& callback) override; |
144 void StopCaching() override; | 146 void StopCaching() override; |
145 bool GetFullRequestHeaders(HttpRequestHeaders* headers) const override; | 147 bool GetFullRequestHeaders(HttpRequestHeaders* headers) const override; |
146 int64_t GetTotalReceivedBytes() const override; | 148 int64_t GetTotalReceivedBytes() const override; |
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
326 // conditionalized internally in response to LOAD_VALIDATE_CACHE). | 328 // conditionalized internally in response to LOAD_VALIDATE_CACHE). |
327 // Returns a network error code. | 329 // Returns a network error code. |
328 int BeginExternallyConditionalizedRequest(); | 330 int BeginExternallyConditionalizedRequest(); |
329 | 331 |
330 // Called to restart a network transaction after an error. Returns network | 332 // Called to restart a network transaction after an error. Returns network |
331 // error code. | 333 // error code. |
332 int RestartNetworkRequest(); | 334 int RestartNetworkRequest(); |
333 | 335 |
334 // Called to restart a network transaction with a client certificate. | 336 // Called to restart a network transaction with a client certificate. |
335 // Returns network error code. | 337 // Returns network error code. |
336 int RestartNetworkRequestWithCertificate(X509Certificate* client_cert); | 338 int RestartNetworkRequestWithCertificate(X509Certificate* client_cert, |
| 339 SSLPrivateKey* client_private_key); |
337 | 340 |
338 // Called to restart a network transaction with authentication credentials. | 341 // Called to restart a network transaction with authentication credentials. |
339 // Returns network error code. | 342 // Returns network error code. |
340 int RestartNetworkRequestWithAuth(const AuthCredentials& credentials); | 343 int RestartNetworkRequestWithAuth(const AuthCredentials& credentials); |
341 | 344 |
342 // Called to determine if we need to validate the cache entry before using it, | 345 // Called to determine if we need to validate the cache entry before using it, |
343 // and whether the validation should be synchronous or asynchronous. | 346 // and whether the validation should be synchronous or asynchronous. |
344 ValidationType RequiresValidation(); | 347 ValidationType RequiresValidation(); |
345 | 348 |
346 // Called to make the request conditional (to ask the server if the cached | 349 // Called to make the request conditional (to ask the server if the cached |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
494 BeforeProxyHeadersSentCallback before_proxy_headers_sent_callback_; | 497 BeforeProxyHeadersSentCallback before_proxy_headers_sent_callback_; |
495 | 498 |
496 base::WeakPtrFactory<Transaction> weak_factory_; | 499 base::WeakPtrFactory<Transaction> weak_factory_; |
497 | 500 |
498 DISALLOW_COPY_AND_ASSIGN(Transaction); | 501 DISALLOW_COPY_AND_ASSIGN(Transaction); |
499 }; | 502 }; |
500 | 503 |
501 } // namespace net | 504 } // namespace net |
502 | 505 |
503 #endif // NET_HTTP_HTTP_CACHE_TRANSACTION_H_ | 506 #endif // NET_HTTP_HTTP_CACHE_TRANSACTION_H_ |
OLD | NEW |