OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 27 matching lines...) Expand all Loading... |
38 #include "wtf/RefPtr.h" | 38 #include "wtf/RefPtr.h" |
39 | 39 |
40 namespace WebCore { | 40 namespace WebCore { |
41 | 41 |
42 ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper
(WebSocketChannelClient* client) | 42 ThreadableWebSocketChannelClientWrapper::ThreadableWebSocketChannelClientWrapper
(WebSocketChannelClient* client) |
43 : m_client(client) | 43 : m_client(client) |
44 , m_suspended(false) | 44 , m_suspended(false) |
45 { | 45 { |
46 } | 46 } |
47 | 47 |
48 PassRefPtr<ThreadableWebSocketChannelClientWrapper> ThreadableWebSocketChannelCl
ientWrapper::create(WebSocketChannelClient* client) | 48 PassRefPtrWillBeRawPtr<ThreadableWebSocketChannelClientWrapper> ThreadableWebSoc
ketChannelClientWrapper::create(WebSocketChannelClient* client) |
49 { | 49 { |
50 return adoptRef(new ThreadableWebSocketChannelClientWrapper(client)); | 50 return adoptRefWillBeNoop(new ThreadableWebSocketChannelClientWrapper(client
)); |
51 } | 51 } |
52 | 52 |
53 String ThreadableWebSocketChannelClientWrapper::subprotocol() const | 53 String ThreadableWebSocketChannelClientWrapper::subprotocol() const |
54 { | 54 { |
55 if (m_subprotocol.isEmpty()) | 55 if (m_subprotocol.isEmpty()) |
56 return emptyString(); | 56 return emptyString(); |
57 return String(m_subprotocol); | 57 return String(m_subprotocol); |
58 } | 58 } |
59 | 59 |
60 void ThreadableWebSocketChannelClientWrapper::setSubprotocol(const String& subpr
otocol) | 60 void ThreadableWebSocketChannelClientWrapper::setSubprotocol(const String& subpr
otocol) |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 void ThreadableWebSocketChannelClientWrapper::processPendingTasks() | 144 void ThreadableWebSocketChannelClientWrapper::processPendingTasks() |
145 { | 145 { |
146 if (m_suspended) | 146 if (m_suspended) |
147 return; | 147 return; |
148 Vector<OwnPtr<ExecutionContextTask> > tasks; | 148 Vector<OwnPtr<ExecutionContextTask> > tasks; |
149 tasks.swap(m_pendingTasks); | 149 tasks.swap(m_pendingTasks); |
150 for (Vector<OwnPtr<ExecutionContextTask> >::const_iterator iter = tasks.begi
n(); iter != tasks.end(); ++iter) | 150 for (Vector<OwnPtr<ExecutionContextTask> >::const_iterator iter = tasks.begi
n(); iter != tasks.end(); ++iter) |
151 (*iter)->performTask(0); | 151 (*iter)->performTask(0); |
152 } | 152 } |
153 | 153 |
154 void ThreadableWebSocketChannelClientWrapper::didConnectCallback(ExecutionContex
t* context, PassRefPtr<ThreadableWebSocketChannelClientWrapper> wrapper) | 154 void ThreadableWebSocketChannelClientWrapper::didConnectCallback(ExecutionContex
t* context, PassRefPtrWillBeRawPtr<ThreadableWebSocketChannelClientWrapper> wrap
per) |
155 { | 155 { |
156 ASSERT_UNUSED(context, !context); | 156 ASSERT_UNUSED(context, !context); |
157 if (wrapper->m_client) | 157 if (wrapper->m_client) |
158 wrapper->m_client->didConnect(); | 158 wrapper->m_client->didConnect(); |
159 } | 159 } |
160 | 160 |
161 void ThreadableWebSocketChannelClientWrapper::didReceiveMessageCallback(Executio
nContext* context, PassRefPtr<ThreadableWebSocketChannelClientWrapper> wrapper,
const String& message) | 161 void ThreadableWebSocketChannelClientWrapper::didReceiveMessageCallback(Executio
nContext* context, PassRefPtrWillBeRawPtr<ThreadableWebSocketChannelClientWrappe
r> wrapper, const String& message) |
162 { | 162 { |
163 ASSERT_UNUSED(context, !context); | 163 ASSERT_UNUSED(context, !context); |
164 if (wrapper->m_client) | 164 if (wrapper->m_client) |
165 wrapper->m_client->didReceiveMessage(message); | 165 wrapper->m_client->didReceiveMessage(message); |
166 } | 166 } |
167 | 167 |
168 void ThreadableWebSocketChannelClientWrapper::didReceiveBinaryDataCallback(Execu
tionContext* context, PassRefPtr<ThreadableWebSocketChannelClientWrapper> wrappe
r, PassOwnPtr<Vector<char> > binaryData) | 168 void ThreadableWebSocketChannelClientWrapper::didReceiveBinaryDataCallback(Execu
tionContext* context, PassRefPtrWillBeRawPtr<ThreadableWebSocketChannelClientWra
pper> wrapper, PassOwnPtr<Vector<char> > binaryData) |
169 { | 169 { |
170 ASSERT_UNUSED(context, !context); | 170 ASSERT_UNUSED(context, !context); |
171 if (wrapper->m_client) | 171 if (wrapper->m_client) |
172 wrapper->m_client->didReceiveBinaryData(binaryData); | 172 wrapper->m_client->didReceiveBinaryData(binaryData); |
173 } | 173 } |
174 | 174 |
175 void ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmountCallback(Ex
ecutionContext* context, PassRefPtr<ThreadableWebSocketChannelClientWrapper> wra
pper, unsigned long bufferedAmount) | 175 void ThreadableWebSocketChannelClientWrapper::didUpdateBufferedAmountCallback(Ex
ecutionContext* context, PassRefPtrWillBeRawPtr<ThreadableWebSocketChannelClient
Wrapper> wrapper, unsigned long bufferedAmount) |
176 { | 176 { |
177 ASSERT_UNUSED(context, !context); | 177 ASSERT_UNUSED(context, !context); |
178 if (wrapper->m_client) | 178 if (wrapper->m_client) |
179 wrapper->m_client->didUpdateBufferedAmount(bufferedAmount); | 179 wrapper->m_client->didUpdateBufferedAmount(bufferedAmount); |
180 } | 180 } |
181 | 181 |
182 void ThreadableWebSocketChannelClientWrapper::didStartClosingHandshakeCallback(E
xecutionContext* context, PassRefPtr<ThreadableWebSocketChannelClientWrapper> wr
apper) | 182 void ThreadableWebSocketChannelClientWrapper::didStartClosingHandshakeCallback(E
xecutionContext* context, PassRefPtrWillBeRawPtr<ThreadableWebSocketChannelClien
tWrapper> wrapper) |
183 { | 183 { |
184 ASSERT_UNUSED(context, !context); | 184 ASSERT_UNUSED(context, !context); |
185 if (wrapper->m_client) | 185 if (wrapper->m_client) |
186 wrapper->m_client->didStartClosingHandshake(); | 186 wrapper->m_client->didStartClosingHandshake(); |
187 } | 187 } |
188 | 188 |
189 void ThreadableWebSocketChannelClientWrapper::didCloseCallback(ExecutionContext*
context, PassRefPtr<ThreadableWebSocketChannelClientWrapper> wrapper, unsigned
long unhandledBufferedAmount, WebSocketChannelClient::ClosingHandshakeCompletion
Status closingHandshakeCompletion, unsigned short code, const String& reason) | 189 void ThreadableWebSocketChannelClientWrapper::didCloseCallback(ExecutionContext*
context, PassRefPtrWillBeRawPtr<ThreadableWebSocketChannelClientWrapper> wrappe
r, unsigned long unhandledBufferedAmount, WebSocketChannelClient::ClosingHandsha
keCompletionStatus closingHandshakeCompletion, unsigned short code, const String
& reason) |
190 { | 190 { |
191 ASSERT_UNUSED(context, !context); | 191 ASSERT_UNUSED(context, !context); |
192 if (wrapper->m_client) | 192 if (wrapper->m_client) |
193 wrapper->m_client->didClose(unhandledBufferedAmount, closingHandshakeCom
pletion, code, reason); | 193 wrapper->m_client->didClose(unhandledBufferedAmount, closingHandshakeCom
pletion, code, reason); |
194 } | 194 } |
195 | 195 |
196 void ThreadableWebSocketChannelClientWrapper::didReceiveMessageErrorCallback(Exe
cutionContext* context, PassRefPtr<ThreadableWebSocketChannelClientWrapper> wrap
per) | 196 void ThreadableWebSocketChannelClientWrapper::didReceiveMessageErrorCallback(Exe
cutionContext* context, PassRefPtrWillBeRawPtr<ThreadableWebSocketChannelClientW
rapper> wrapper) |
197 { | 197 { |
198 ASSERT_UNUSED(context, !context); | 198 ASSERT_UNUSED(context, !context); |
199 if (wrapper->m_client) | 199 if (wrapper->m_client) |
200 wrapper->m_client->didReceiveMessageError(); | 200 wrapper->m_client->didReceiveMessageError(); |
201 } | 201 } |
202 | 202 |
203 } // namespace WebCore | 203 } // namespace WebCore |
OLD | NEW |