OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 CONTENT_CHILD_WEBSOCKET_BRIDGE_H_ | 5 #ifndef CONTENT_CHILD_WEBSOCKET_BRIDGE_H_ |
6 #define CONTENT_CHILD_WEBSOCKET_BRIDGE_H_ | 6 #define CONTENT_CHILD_WEBSOCKET_BRIDGE_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 13 matching lines...) Expand all Loading... |
24 namespace content { | 24 namespace content { |
25 | 25 |
26 class WebSocketBridge : public blink::WebSocketHandle { | 26 class WebSocketBridge : public blink::WebSocketHandle { |
27 public: | 27 public: |
28 WebSocketBridge(); | 28 WebSocketBridge(); |
29 | 29 |
30 // Handles an IPC message from the browser process. | 30 // Handles an IPC message from the browser process. |
31 bool OnMessageReceived(const IPC::Message& message); | 31 bool OnMessageReceived(const IPC::Message& message); |
32 | 32 |
33 // WebSocketHandle functions. | 33 // WebSocketHandle functions. |
34 virtual void connect(const blink::WebURL& url, | 34 void connect(const blink::WebURL& url, |
35 const blink::WebVector<blink::WebString>& protocols, | 35 const blink::WebVector<blink::WebString>& protocols, |
36 const blink::WebSerializedOrigin& origin, | 36 const blink::WebSerializedOrigin& origin, |
37 blink::WebSocketHandleClient* client) override; | 37 blink::WebSocketHandleClient* client) override; |
38 virtual void send(bool fin, | 38 void send(bool fin, |
39 WebSocketHandle::MessageType type, | 39 WebSocketHandle::MessageType type, |
40 const char* data, | 40 const char* data, |
41 size_t size) override; | 41 size_t size) override; |
42 virtual void flowControl(int64_t quota) override; | 42 void flowControl(int64_t quota) override; |
43 virtual void close(unsigned short code, | 43 void close(unsigned short code, const blink::WebString& reason) override; |
44 const blink::WebString& reason) override; | |
45 | 44 |
46 virtual void Disconnect(); | 45 void Disconnect(); |
47 | 46 |
48 void set_render_frame_id(int id) { | 47 void set_render_frame_id(int id) { |
49 render_frame_id_ = id; | 48 render_frame_id_ = id; |
50 } | 49 } |
51 | 50 |
52 private: | 51 private: |
53 virtual ~WebSocketBridge(); | 52 ~WebSocketBridge() override; |
54 | 53 |
55 void DidConnect(const std::string& selected_protocol, | 54 void DidConnect(const std::string& selected_protocol, |
56 const std::string& extensions); | 55 const std::string& extensions); |
57 void DidStartOpeningHandshake(const WebSocketHandshakeRequest& request); | 56 void DidStartOpeningHandshake(const WebSocketHandshakeRequest& request); |
58 void DidFinishOpeningHandshake(const WebSocketHandshakeResponse& response); | 57 void DidFinishOpeningHandshake(const WebSocketHandshakeResponse& response); |
59 void DidFail(const std::string& message); | 58 void DidFail(const std::string& message); |
60 void DidReceiveData(bool fin, | 59 void DidReceiveData(bool fin, |
61 WebSocketMessageType type, | 60 WebSocketMessageType type, |
62 const std::vector<char>& data); | 61 const std::vector<char>& data); |
63 void DidReceiveFlowControl(int64_t quota); | 62 void DidReceiveFlowControl(int64_t quota); |
64 void DidClose(bool was_clean, unsigned short code, const std::string& reason); | 63 void DidClose(bool was_clean, unsigned short code, const std::string& reason); |
65 void DidStartClosingHandshake(); | 64 void DidStartClosingHandshake(); |
66 | 65 |
67 int channel_id_; | 66 int channel_id_; |
68 int render_frame_id_; | 67 int render_frame_id_; |
69 blink::WebSocketHandleClient* client_; | 68 blink::WebSocketHandleClient* client_; |
70 | 69 |
71 static const int kInvalidChannelId = -1; | 70 static const int kInvalidChannelId = -1; |
72 }; | 71 }; |
73 | 72 |
74 } // namespace content | 73 } // namespace content |
75 | 74 |
76 #endif // CONTENT_CHILD_WEBSOCKET_BRIDGE_H_ | 75 #endif // CONTENT_CHILD_WEBSOCKET_BRIDGE_H_ |
OLD | NEW |