summaryrefslogtreecommitdiffstats
path: root/net/websockets/websocket.h
diff options
context:
space:
mode:
authorukai@chromium.org <ukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-06 06:32:06 +0000
committerukai@chromium.org <ukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-11-06 06:32:06 +0000
commit8cb9e2de37879b1bdda07e2fb3490720859910f4 (patch)
tree818e0dcbe44201dfe1bc6f691956a53a0cac64c7 /net/websockets/websocket.h
parentaa3d892d9b41af9fa95bb15ba8b21e879f92471b (diff)
downloadchromium_src-8cb9e2de37879b1bdda07e2fb3490720859910f4.zip
chromium_src-8cb9e2de37879b1bdda07e2fb3490720859910f4.tar.gz
chromium_src-8cb9e2de37879b1bdda07e2fb3490720859910f4.tar.bz2
Add error reporting in net/websockets
Fix response code for websocket authentication. BUG=none TEST=none Review URL: http://codereview.chromium.org/368003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31211 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/websockets/websocket.h')
-rw-r--r--net/websockets/websocket.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/net/websockets/websocket.h b/net/websockets/websocket.h
index 2279681..8ce5e83 100644
--- a/net/websockets/websocket.h
+++ b/net/websockets/websocket.h
@@ -45,6 +45,9 @@ class WebSocketDelegate {
// Called when |socket| is closed.
virtual void OnClose(WebSocket* socket) = 0;
+
+ // Called when an error occured on |socket|.
+ virtual void OnError(const WebSocket* socket, int error) {}
};
class WebSocket : public base::RefCountedThreadSafe<WebSocket>,
@@ -110,6 +113,7 @@ class WebSocket : public base::RefCountedThreadSafe<WebSocket>,
// |delegate| must be alive while this object is alive.
WebSocket(Request* req, WebSocketDelegate* delegate);
+ const Request* request() const { return request_.get(); }
WebSocketDelegate* delegate() const { return delegate_; }
State ready_state() const { return ready_state_; }
@@ -132,6 +136,7 @@ class WebSocket : public base::RefCountedThreadSafe<WebSocket>,
virtual void OnReceivedData(SocketStream* socket_stream,
const char* data, int len);
virtual void OnClose(SocketStream* socket);
+ virtual void OnError(const SocketStream* socket, int error);
private:
enum Mode {
@@ -183,6 +188,9 @@ class WebSocket : public base::RefCountedThreadSafe<WebSocket>,
// Handles closed connection.
void DoClose();
+ // Handles error report.
+ void DoError(int error);
+
State ready_state_;
Mode mode_;
scoped_ptr<Request> request_;