void WebProcessConnection::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder, std::unique_ptr<CoreIPC::MessageEncoder>& replyEncoder) { // Force all timers to run at full speed when processing a synchronous message ActivityAssertion activityAssertion(PluginProcess::shared()); ConnectionStack::CurrentConnectionPusher currentConnection(ConnectionStack::shared(), connection); uint64_t destinationID = decoder.destinationID(); if (!destinationID) { didReceiveSyncWebProcessConnectionMessage(connection, decoder, replyEncoder); return; } if (decoder.messageReceiverName() == Messages::NPObjectMessageReceiver::messageReceiverName()) { m_npRemoteObjectMap->didReceiveSyncMessage(connection, decoder, replyEncoder); return; } PluginControllerProxy* pluginControllerProxy = m_pluginControllers.get(decoder.destinationID()); if (!pluginControllerProxy) return; PluginController::PluginDestructionProtector protector(pluginControllerProxy->asPluginController()); pluginControllerProxy->didReceiveSyncPluginControllerProxyMessage(connection, decoder, replyEncoder); }
void DatabaseToWebProcessConnection::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder) { if (decoder.messageReceiverName() == Messages::DatabaseToWebProcessConnection::messageReceiverName()) { didReceiveDatabaseToWebProcessConnectionMessage(connection, decoder); return; } if (decoder.messageReceiverName() == Messages::DatabaseProcessIDBConnection::messageReceiverName()) { IDBConnectionMap::iterator backendIterator = m_idbConnections.find(decoder.destinationID()); if (backendIterator != m_idbConnections.end()) backendIterator->value->didReceiveDatabaseProcessIDBConnectionMessage(connection, decoder); return; } ASSERT_NOT_REACHED(); }
void NetworkConnectionToWebProcess::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder) { if (decoder.messageReceiverName() == Messages::NetworkConnectionToWebProcess::messageReceiverName()) { didReceiveNetworkConnectionToWebProcessMessage(connection, decoder); return; } if (decoder.messageReceiverName() == Messages::NetworkResourceLoader::messageReceiverName()) { HashMap<ResourceLoadIdentifier, RefPtr<NetworkResourceLoader>>::iterator loaderIterator = m_networkResourceLoaders.find(decoder.destinationID()); if (loaderIterator != m_networkResourceLoaders.end()) loaderIterator->value->didReceiveNetworkResourceLoaderMessage(connection, decoder); return; } ASSERT_NOT_REACHED(); }
void NetworkConnectionToWebProcess::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder, OwnPtr<CoreIPC::MessageEncoder>& reply) { if (decoder.messageReceiverName() == Messages::NetworkConnectionToWebProcess::messageReceiverName()) { didReceiveSyncNetworkConnectionToWebProcessMessage(connection, decoder, reply); return; } ASSERT_NOT_REACHED(); }
void NetworkConnectionToWebProcess::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder) { if (decoder.messageReceiverName() == Messages::NetworkConnectionToWebProcess::messageReceiverName()) { didReceiveNetworkConnectionToWebProcessMessage(connection, decoder); return; } ASSERT_NOT_REACHED(); }
void NetworkProcessConnection::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder) { if (decoder.messageReceiverName() == Messages::WebResourceLoader::messageReceiverName()) { if (WebResourceLoader* webResourceLoader = WebProcess::shared().webResourceLoadScheduler().webResourceLoaderForIdentifier(decoder.destinationID())) webResourceLoader->didReceiveWebResourceLoaderMessage(connection, decoder); return; } didReceiveNetworkProcessConnectionMessage(connection, decoder); }
void WebToDatabaseProcessConnection::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder) { if (decoder.messageReceiverName() == Messages::WebIDBServerConnection::messageReceiverName()) { HashMap<uint64_t, WebIDBServerConnection*>::iterator connectionIterator = m_webIDBServerConnections.find(decoder.destinationID()); if (connectionIterator != m_webIDBServerConnections.end()) connectionIterator->value->didReceiveWebIDBServerConnectionMessage(connection, decoder); return; } ASSERT_NOT_REACHED(); }
void NetworkProcessConnection::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder, OwnPtr<CoreIPC::MessageEncoder>& replyEncoder) { if (decoder.messageReceiverName() == Messages::WebResourceLoader::messageReceiverName()) { if (WebResourceLoader* webResourceLoader = WebProcess::shared().webResourceLoadScheduler().webResourceLoaderForIdentifier(decoder.destinationID())) webResourceLoader->didReceiveSyncWebResourceLoaderMessage(connection, decoder, replyEncoder); return; } ASSERT_NOT_REACHED(); }
void WebProcess::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder) { if (messageReceiverMap().dispatchMessage(connection, decoder)) return; if (decoder.messageReceiverName() == Messages::WebProcess::messageReceiverName()) { didReceiveWebProcessMessage(connection, decoder); return; } if (decoder.messageReceiverName() == Messages::WebPageGroupProxy::messageReceiverName()) { uint64_t pageGroupID = decoder.destinationID(); if (!pageGroupID) return; WebPageGroupProxy* pageGroupProxy = webPageGroup(pageGroupID); if (!pageGroupProxy) return; pageGroupProxy->didReceiveMessage(connection, decoder); } }
void WebProcessProxy::didReceiveSyncMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder, OwnPtr<CoreIPC::MessageEncoder>& replyEncoder) { if (dispatchSyncMessage(connection, decoder, replyEncoder)) return; if (m_context->dispatchSyncMessage(connection, decoder, replyEncoder)) return; if (decoder.messageReceiverName() == Messages::WebProcessProxy::messageReceiverName()) { didReceiveSyncWebProcessProxyMessage(connection, decoder, replyEncoder); return; } // FIXME: Add unhandled message logging. }
void WebProcessConnection::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageDecoder& decoder) { ConnectionStack::CurrentConnectionPusher currentConnection(ConnectionStack::shared(), connection); if (decoder.messageReceiverName() == Messages::WebProcessConnection::messageReceiverName()) { didReceiveWebProcessConnectionMessage(connection, decoder); return; } if (!decoder.destinationID()) { ASSERT_NOT_REACHED(); return; } PluginControllerProxy* pluginControllerProxy = m_pluginControllers.get(decoder.destinationID()); if (!pluginControllerProxy) return; PluginController::PluginDestructionProtector protector(pluginControllerProxy->asPluginController()); pluginControllerProxy->didReceivePluginControllerProxyMessage(connection, decoder); }