Chromium Code Reviews| Index: net/websockets/websocket_deflate_stream.h |
| diff --git a/net/websockets/websocket_deflate_stream.h b/net/websockets/websocket_deflate_stream.h |
| index fc2ebf4c4e44879cdf7a81f8181035273eef8e73..e9ff11a12fd8795dcada83ac88d7536804ef978b 100644 |
| --- a/net/websockets/websocket_deflate_stream.h |
| +++ b/net/websockets/websocket_deflate_stream.h |
| @@ -12,6 +12,7 @@ |
| #include "base/memory/scoped_vector.h" |
| #include "net/base/completion_callback.h" |
| #include "net/base/net_export.h" |
| +#include "net/websockets/websocket_deflate_predictor.h" |
|
Adam Rice
2013/10/30 02:56:53
WebSocketDeflatePredictor can be pre-declared rath
yhirano
2013/10/30 03:19:47
Done.
|
| #include "net/websockets/websocket_deflater.h" |
| #include "net/websockets/websocket_frame.h" |
| #include "net/websockets/websocket_inflater.h" |
| @@ -28,7 +29,8 @@ namespace net { |
| class NET_EXPORT_PRIVATE WebSocketDeflateStream : public WebSocketStream { |
| public: |
| WebSocketDeflateStream(scoped_ptr<WebSocketStream> stream, |
| - WebSocketDeflater::ContextTakeOverMode mode); |
| + WebSocketDeflater::ContextTakeOverMode mode, |
| + scoped_ptr<WebSocketDeflatePredictor> predictor); |
| virtual ~WebSocketDeflateStream(); |
| // WebSocketStream functions. |
| @@ -50,6 +52,7 @@ class NET_EXPORT_PRIVATE WebSocketDeflateStream : public WebSocketStream { |
| enum WritingState { |
| WRITING_COMPRESSED_MESSAGE, |
| WRITING_UNCOMPRESSED_MESSAGE, |
| + WRITING_POSSIBLY_COMPRESSED_MESSAGE, |
| NOT_WRITING, |
| }; |
| @@ -59,6 +62,12 @@ class NET_EXPORT_PRIVATE WebSocketDeflateStream : public WebSocketStream { |
| // This function deflates |frames| and stores the result to |frames| itself. |
| int Deflate(ScopedVector<WebSocketFrame>* frames); |
| + void OnMessageStart(const ScopedVector<WebSocketFrame>& frames, size_t index); |
| + int AppendCompressedFrame(const WebSocketFrameHeader& header, |
| + ScopedVector<WebSocketFrame>* frames_to_write); |
| + int AppendPossiblyCompressedMessage( |
| + ScopedVector<WebSocketFrame>* frames, |
| + ScopedVector<WebSocketFrame>* frames_to_write); |
| // This function inflates |frames| and stores the result to |frames| itself. |
| int Inflate(ScopedVector<WebSocketFrame>* frames); |
| @@ -73,6 +82,7 @@ class NET_EXPORT_PRIVATE WebSocketDeflateStream : public WebSocketStream { |
| WritingState writing_state_; |
| WebSocketFrameHeader::OpCode current_reading_opcode_; |
| WebSocketFrameHeader::OpCode current_writing_opcode_; |
| + scoped_ptr<WebSocketDeflatePredictor> predictor_; |
| DISALLOW_COPY_AND_ASSIGN(WebSocketDeflateStream); |
| }; |