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_SPDY_BUFFERED_SPDY_FRAMER_H_ | 5 #ifndef NET_SPDY_BUFFERED_SPDY_FRAMER_H_ |
6 #define NET_SPDY_BUFFERED_SPDY_FRAMER_H_ | 6 #define NET_SPDY_BUFFERED_SPDY_FRAMER_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <string> | 9 #include <string> |
10 | 10 |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
61 // When the other side has finished sending data on this stream, | 61 // When the other side has finished sending data on this stream, |
62 // this method will be called with a zero-length buffer. | 62 // this method will be called with a zero-length buffer. |
63 virtual void OnStreamFrameData(SpdyStreamId stream_id, | 63 virtual void OnStreamFrameData(SpdyStreamId stream_id, |
64 const char* data, | 64 const char* data, |
65 size_t len) = 0; | 65 size_t len) = 0; |
66 | 66 |
67 // Called when an individual setting within a SETTINGS frame has been parsed | 67 // Called when an individual setting within a SETTINGS frame has been parsed |
68 // and validated. | 68 // and validated. |
69 virtual void OnSetting(SpdySettingsIds id, uint8 flags, uint32 value) = 0; | 69 virtual void OnSetting(SpdySettingsIds id, uint8 flags, uint32 value) = 0; |
70 | 70 |
| 71 virtual void OnControlFrameCompressed( |
| 72 const SpdyControlFrame& uncompressed_frame, |
| 73 const SpdyControlFrame& compressed_frame) = 0; |
| 74 |
71 protected: | 75 protected: |
72 virtual ~BufferedSpdyFramerVisitorInterface() {} | 76 virtual ~BufferedSpdyFramerVisitorInterface() {} |
73 | 77 |
74 private: | 78 private: |
75 DISALLOW_COPY_AND_ASSIGN(BufferedSpdyFramerVisitorInterface); | 79 DISALLOW_COPY_AND_ASSIGN(BufferedSpdyFramerVisitorInterface); |
76 }; | 80 }; |
77 | 81 |
78 class NET_EXPORT_PRIVATE BufferedSpdyFramer | 82 class NET_EXPORT_PRIVATE BufferedSpdyFramer |
79 : public SpdyFramerVisitorInterface { | 83 : public SpdyFramerVisitorInterface { |
80 public: | 84 public: |
(...skipping 14 matching lines...) Expand all Loading... |
95 virtual bool OnControlFrameHeaderData(SpdyStreamId stream_id, | 99 virtual bool OnControlFrameHeaderData(SpdyStreamId stream_id, |
96 const char* header_data, | 100 const char* header_data, |
97 size_t len) OVERRIDE; | 101 size_t len) OVERRIDE; |
98 virtual void OnStreamFrameData(SpdyStreamId stream_id, | 102 virtual void OnStreamFrameData(SpdyStreamId stream_id, |
99 const char* data, | 103 const char* data, |
100 size_t len) OVERRIDE; | 104 size_t len) OVERRIDE; |
101 virtual void OnSetting( | 105 virtual void OnSetting( |
102 SpdySettingsIds id, uint8 flags, uint32 value) OVERRIDE; | 106 SpdySettingsIds id, uint8 flags, uint32 value) OVERRIDE; |
103 virtual void OnDataFrameHeader(const SpdyDataFrame* frame) OVERRIDE; | 107 virtual void OnDataFrameHeader(const SpdyDataFrame* frame) OVERRIDE; |
104 | 108 |
| 109 // Called after a control frame has been compressed to allow the visitor |
| 110 // to record compression statistics. |
| 111 virtual void OnControlFrameCompressed( |
| 112 const SpdyControlFrame& uncompressed_frame, |
| 113 const SpdyControlFrame& compressed_frame) OVERRIDE; |
| 114 |
105 // SpdyFramer methods. | 115 // SpdyFramer methods. |
106 size_t ProcessInput(const char* data, size_t len); | 116 size_t ProcessInput(const char* data, size_t len); |
107 int protocol_version(); | 117 int protocol_version(); |
108 void Reset(); | 118 void Reset(); |
109 SpdyFramer::SpdyError error_code() const; | 119 SpdyFramer::SpdyError error_code() const; |
110 SpdyFramer::SpdyState state() const; | 120 SpdyFramer::SpdyState state() const; |
111 bool MessageFullyRead(); | 121 bool MessageFullyRead(); |
112 bool HasError(); | 122 bool HasError(); |
113 SpdySynStreamControlFrame* CreateSynStream(SpdyStreamId stream_id, | 123 SpdySynStreamControlFrame* CreateSynStream(SpdyStreamId stream_id, |
114 SpdyStreamId associated_stream_id, | 124 SpdyStreamId associated_stream_id, |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 SpdyStreamId header_stream_id_; | 175 SpdyStreamId header_stream_id_; |
166 scoped_ptr<SpdyFrame> control_frame_; | 176 scoped_ptr<SpdyFrame> control_frame_; |
167 int frames_received_; | 177 int frames_received_; |
168 | 178 |
169 DISALLOW_COPY_AND_ASSIGN(BufferedSpdyFramer); | 179 DISALLOW_COPY_AND_ASSIGN(BufferedSpdyFramer); |
170 }; | 180 }; |
171 | 181 |
172 } // namespace net | 182 } // namespace net |
173 | 183 |
174 #endif // NET_SPDY_BUFFERED_SPDY_FRAMER_H_ | 184 #endif // NET_SPDY_BUFFERED_SPDY_FRAMER_H_ |
OLD | NEW |