| Index: third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerClient.cpp
|
| diff --git a/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerClient.cpp b/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerClient.cpp
|
| index 198f6e2afa25966372a7abc900bdd58a6a5852f6..faeda840003cc0b663a946b4ac1e3f30a38a6ede 100644
|
| --- a/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerClient.cpp
|
| +++ b/third_party/WebKit/Source/modules/serviceworkers/ServiceWorkerClient.cpp
|
| @@ -3,6 +3,7 @@
|
| // found in the LICENSE file.
|
|
|
| #include "modules/serviceworkers/ServiceWorkerClient.h"
|
| +#include "modules/serviceworkers/ServiceWorkerWindowClient.h"
|
|
|
| #include "bindings/core/v8/CallbackPromiseAdapter.h"
|
| #include "bindings/core/v8/ExceptionState.h"
|
| @@ -14,6 +15,25 @@
|
|
|
| namespace blink {
|
|
|
| +ServiceWorkerClient* ServiceWorkerClient::take(ScriptPromiseResolver*, PassOwnPtr<WebServiceWorkerClientInfo> webClient)
|
| +{
|
| + if (!webClient)
|
| + return nullptr;
|
| +
|
| + switch (webClient->clientType) {
|
| + case WebServiceWorkerClientTypeWindow:
|
| + return ServiceWorkerWindowClient::create(*webClient);
|
| + case WebServiceWorkerClientTypeWorker:
|
| + case WebServiceWorkerClientTypeSharedWorker:
|
| + return ServiceWorkerClient::create(*webClient);
|
| + case WebServiceWorkerClientTypeLast:
|
| + ASSERT_NOT_REACHED();
|
| + return nullptr;
|
| + }
|
| + ASSERT_NOT_REACHED();
|
| + return nullptr;
|
| +}
|
| +
|
| ServiceWorkerClient* ServiceWorkerClient::create(const WebServiceWorkerClientInfo& info)
|
| {
|
| return new ServiceWorkerClient(info);
|
|
|