Changeset 142672 in webkit
- Timestamp:
- Feb 12, 2013 2:17:36 PM (11 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r142668 r142672 1 2013-02-12 Anders Carlsson <andersca@apple.com> 2 3 Introduce a WorkQueueMessageReceiver class as a replacement for QueueClient 4 https://bugs.webkit.org/show_bug.cgi?id=109612 5 6 Reviewed by Andreas Kling. 7 8 * Platform/CoreIPC/Connection.cpp: 9 (CoreIPC::Connection::addWorkQueueMessageReceiver): 10 (CoreIPC): 11 (CoreIPC::Connection::removeWorkQueueMessageReceiver): 12 (CoreIPC::Connection::addWorkQueueMessageReceiverOnConnectionWorkQueue): 13 (CoreIPC::Connection::removeWorkQueueMessageReceiverOnConnectionWorkQueue): 14 * Platform/CoreIPC/Connection.h: 15 (Connection): 16 1 17 2013-02-12 Csaba Osztrogonác <ossy@webkit.org> 2 18 -
trunk/Source/WebKit2/Platform/CoreIPC/Connection.cpp
r142656 r142672 270 270 } 271 271 272 void Connection::addWorkQueueMessageReceiver(StringReference messageReceiverName, WorkQueue* workQueue, WorkQueueMessageReceiver* workQueueMessageReceiver) 273 { 274 ASSERT(RunLoop::current() == m_clientRunLoop); 275 ASSERT(!m_isConnected); 276 277 m_connectionQueue->dispatch(bind(&Connection::addWorkQueueMessageReceiverOnConnectionWorkQueue, this, messageReceiverName, RefPtr<WorkQueue>(workQueue), RefPtr<WorkQueueMessageReceiver>(workQueueMessageReceiver))); 278 } 279 280 void Connection::removeWorkQueueMessageReceiver(StringReference messageReceiverName) 281 { 282 ASSERT(RunLoop::current() == m_clientRunLoop); 283 284 m_connectionQueue->dispatch(bind(&Connection::removeWorkQueueMessageReceiverOnConnectionWorkQueue, this, messageReceiverName)); 285 } 286 287 void Connection::addWorkQueueMessageReceiverOnConnectionWorkQueue(StringReference messageReceiverName, WorkQueue* workQueue, WorkQueueMessageReceiver* workQueueMessageReceiver) 288 { 289 ASSERT(!m_workQueueMessageReceivers.contains(messageReceiverName)); 290 m_workQueueMessageReceivers.add(messageReceiverName, std::make_pair(workQueue, workQueueMessageReceiver)); 291 } 292 293 void Connection::removeWorkQueueMessageReceiverOnConnectionWorkQueue(StringReference messageReceiverName) 294 { 295 ASSERT(m_workQueueMessageReceivers.contains(messageReceiverName)); 296 m_workQueueMessageReceivers.remove(messageReceiverName); 297 } 298 272 299 void Connection::addQueueClientOnWorkQueue(QueueClient* queueClient) 273 300 { -
trunk/Source/WebKit2/Platform/CoreIPC/Connection.h
r141814 r142672 93 93 }; 94 94 95 class WorkQueueMessageReceiver : public MessageReceiver, public ThreadSafeRefCounted<WorkQueueMessageReceiver> { 96 }; 97 95 98 class QueueClient { 96 99 public: … … 166 169 void setDidCloseOnConnectionWorkQueueCallback(DidCloseOnConnectionWorkQueueCallback callback); 167 170 171 void addWorkQueueMessageReceiver(StringReference messageReceiverName, WorkQueue*, WorkQueueMessageReceiver*); 172 void removeWorkQueueMessageReceiver(StringReference messageReceiverName); 173 168 174 void addQueueClient(QueueClient*); 169 175 void removeQueueClient(QueueClient*); … … 206 212 void processIncomingMessage(PassOwnPtr<MessageDecoder>); 207 213 void processIncomingSyncReply(PassOwnPtr<MessageDecoder>); 214 215 void addWorkQueueMessageReceiverOnConnectionWorkQueue(StringReference messageReceiverName, WorkQueue*, WorkQueueMessageReceiver*); 216 void removeWorkQueueMessageReceiverOnConnectionWorkQueue(StringReference messageReceiverName); 208 217 209 218 void addQueueClientOnWorkQueue(QueueClient*); … … 240 249 241 250 Vector<QueueClient*> m_connectionQueueClients; 251 252 HashMap<StringReference, std::pair<RefPtr<WorkQueue>, RefPtr<WorkQueueMessageReceiver> > > m_workQueueMessageReceivers; 242 253 243 254 unsigned m_inDispatchMessageCount;
Note: See TracChangeset
for help on using the changeset viewer.