WebSWServerToContextConnection.cpp [plain text]
#include "config.h"
#include "WebSWServerToContextConnection.h"
#if ENABLE(SERVICE_WORKER)
#include "NetworkProcess.h"
#include "WebCoreArgumentCoders.h"
#include "WebSWContextManagerConnectionMessages.h"
#include <WebCore/ServiceWorkerContextData.h>
namespace WebKit {
using namespace WebCore;
WebSWServerToContextConnection::WebSWServerToContextConnection(const SecurityOriginData& securityOrigin, Ref<IPC::Connection>&& connection)
: SWServerToContextConnection(securityOrigin)
, m_ipcConnection(WTFMove(connection))
{
}
IPC::Connection* WebSWServerToContextConnection::messageSenderConnection()
{
return m_ipcConnection.ptr();
}
uint64_t WebSWServerToContextConnection::messageSenderDestinationID()
{
return 0;
}
void WebSWServerToContextConnection::connectionClosed()
{
}
void WebSWServerToContextConnection::installServiceWorkerContext(const ServiceWorkerContextData& data, PAL::SessionID sessionID, const String& userAgent)
{
send(Messages::WebSWContextManagerConnection::InstallServiceWorker { data, sessionID, userAgent });
}
void WebSWServerToContextConnection::fireInstallEvent(ServiceWorkerIdentifier serviceWorkerIdentifier)
{
send(Messages::WebSWContextManagerConnection::FireInstallEvent(serviceWorkerIdentifier));
}
void WebSWServerToContextConnection::fireActivateEvent(ServiceWorkerIdentifier serviceWorkerIdentifier)
{
send(Messages::WebSWContextManagerConnection::FireActivateEvent(serviceWorkerIdentifier));
}
void WebSWServerToContextConnection::terminateWorker(ServiceWorkerIdentifier serviceWorkerIdentifier)
{
send(Messages::WebSWContextManagerConnection::TerminateWorker(serviceWorkerIdentifier));
}
void WebSWServerToContextConnection::syncTerminateWorker(ServiceWorkerIdentifier serviceWorkerIdentifier)
{
sendSync(Messages::WebSWContextManagerConnection::SyncTerminateWorker(serviceWorkerIdentifier), Messages::WebSWContextManagerConnection::SyncTerminateWorker::Reply());
}
void WebSWServerToContextConnection::findClientByIdentifierCompleted(uint64_t requestIdentifier, const Optional<ServiceWorkerClientData>& data, bool hasSecurityError)
{
send(Messages::WebSWContextManagerConnection::FindClientByIdentifierCompleted { requestIdentifier, data, hasSecurityError });
}
void WebSWServerToContextConnection::matchAllCompleted(uint64_t requestIdentifier, const Vector<ServiceWorkerClientData>& clientsData)
{
send(Messages::WebSWContextManagerConnection::MatchAllCompleted { requestIdentifier, clientsData });
}
void WebSWServerToContextConnection::claimCompleted(uint64_t requestIdentifier)
{
send(Messages::WebSWContextManagerConnection::ClaimCompleted { requestIdentifier });
}
void WebSWServerToContextConnection::didFinishSkipWaiting(uint64_t callbackID)
{
send(Messages::WebSWContextManagerConnection::DidFinishSkipWaiting { callbackID });
}
void WebSWServerToContextConnection::connectionMayNoLongerBeNeeded()
{
NetworkProcess::singleton().swContextConnectionMayNoLongerBeNeeded(*this);
}
void WebSWServerToContextConnection::terminate()
{
send(Messages::WebSWContextManagerConnection::TerminateProcess());
}
}
#endif // ENABLE(SERVICE_WORKER)