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 #ifndef NET_HTTP_HTTP_PIPELINED_STREAM_H_ | 5 #ifndef NET_HTTP_HTTP_PIPELINED_STREAM_H_ |
6 #define NET_HTTP_HTTP_PIPELINED_STREAM_H_ | 6 #define NET_HTTP_HTTP_PIPELINED_STREAM_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 14 matching lines...) Expand all Loading... |
25 | 25 |
26 // HttpPipelinedStream is the pipelined implementation of HttpStream. It has | 26 // HttpPipelinedStream is the pipelined implementation of HttpStream. It has |
27 // very little code in it. Instead, it serves as the client's interface to the | 27 // very little code in it. Instead, it serves as the client's interface to the |
28 // pipelined connection, where all the work happens. | 28 // pipelined connection, where all the work happens. |
29 // | 29 // |
30 // In the case of pipelining failures, these functions may return | 30 // In the case of pipelining failures, these functions may return |
31 // ERR_PIPELINE_EVICTION. In that case, the client should retry the HTTP | 31 // ERR_PIPELINE_EVICTION. In that case, the client should retry the HTTP |
32 // request without pipelining. | 32 // request without pipelining. |
33 class HttpPipelinedStream : public HttpStream { | 33 class HttpPipelinedStream : public HttpStream { |
34 public: | 34 public: |
35 HttpPipelinedStream(HttpPipelinedConnectionImpl* pipeline, | 35 HttpPipelinedStream(HttpPipelinedConnectionImpl* pipeline, int pipeline_id); |
36 int pipeline_id); | |
37 virtual ~HttpPipelinedStream(); | 36 virtual ~HttpPipelinedStream(); |
38 | 37 |
39 // HttpStream methods: | 38 // HttpStream methods: |
40 virtual int InitializeStream(const HttpRequestInfo* request_info, | 39 virtual int InitializeStream(const HttpRequestInfo* request_info, |
41 RequestPriority priority, | 40 RequestPriority priority, |
42 const BoundNetLog& net_log, | 41 const BoundNetLog& net_log, |
43 const CompletionCallback& callback) OVERRIDE; | 42 const CompletionCallback& callback) OVERRIDE; |
44 | 43 |
45 virtual int SendRequest(const HttpRequestHeaders& headers, | 44 virtual int SendRequest(const HttpRequestHeaders& headers, |
46 HttpResponseInfo* response, | 45 HttpResponseInfo* response, |
47 const CompletionCallback& callback) OVERRIDE; | 46 const CompletionCallback& callback) OVERRIDE; |
48 | 47 |
49 virtual UploadProgress GetUploadProgress() const OVERRIDE; | 48 virtual UploadProgress GetUploadProgress() const OVERRIDE; |
50 | 49 |
51 virtual int ReadResponseHeaders(const CompletionCallback& callback) OVERRIDE; | 50 virtual int ReadResponseHeaders(const CompletionCallback& callback) OVERRIDE; |
52 | 51 |
53 virtual const HttpResponseInfo* GetResponseInfo() const OVERRIDE; | 52 virtual const HttpResponseInfo* GetResponseInfo() const OVERRIDE; |
54 | 53 |
55 virtual int ReadResponseBody(IOBuffer* buf, int buf_len, | 54 virtual int ReadResponseBody(IOBuffer* buf, |
| 55 int buf_len, |
56 const CompletionCallback& callback) OVERRIDE; | 56 const CompletionCallback& callback) OVERRIDE; |
57 | 57 |
58 virtual void Close(bool not_reusable) OVERRIDE; | 58 virtual void Close(bool not_reusable) OVERRIDE; |
59 | 59 |
60 virtual HttpStream* RenewStreamForAuth() OVERRIDE; | 60 virtual HttpStream* RenewStreamForAuth() OVERRIDE; |
61 | 61 |
62 virtual bool IsResponseBodyComplete() const OVERRIDE; | 62 virtual bool IsResponseBodyComplete() const OVERRIDE; |
63 | 63 |
64 virtual bool CanFindEndOfResponse() const OVERRIDE; | 64 virtual bool CanFindEndOfResponse() const OVERRIDE; |
65 | 65 |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
106 int pipeline_id_; | 106 int pipeline_id_; |
107 | 107 |
108 const HttpRequestInfo* request_info_; | 108 const HttpRequestInfo* request_info_; |
109 | 109 |
110 DISALLOW_COPY_AND_ASSIGN(HttpPipelinedStream); | 110 DISALLOW_COPY_AND_ASSIGN(HttpPipelinedStream); |
111 }; | 111 }; |
112 | 112 |
113 } // namespace net | 113 } // namespace net |
114 | 114 |
115 #endif // NET_HTTP_HTTP_PIPELINED_STREAM_H_ | 115 #endif // NET_HTTP_HTTP_PIPELINED_STREAM_H_ |
OLD | NEW |