Chromium Code Reviews| Index: content/renderer/service_worker/service_worker_context_client.cc |
| diff --git a/content/renderer/service_worker/service_worker_context_client.cc b/content/renderer/service_worker/service_worker_context_client.cc |
| index 5d0f45bf51830a5d3836fb0453b83955e101fb8d..65092ea7a6dd0b3b8285eb9e0e955416b2edeaf8 100644 |
| --- a/content/renderer/service_worker/service_worker_context_client.cc |
| +++ b/content/renderer/service_worker/service_worker_context_client.cc |
| @@ -266,6 +266,7 @@ void ServiceWorkerContextClient::OnMessageReceived( |
| IPC_MESSAGE_HANDLER(ServiceWorkerMsg_MessageToWorker, OnPostMessage) |
| IPC_MESSAGE_HANDLER(ServiceWorkerMsg_CrossOriginMessageToWorker, |
| OnCrossOriginMessageToWorker) |
| + IPC_MESSAGE_HANDLER(ServiceWorkerMsg_DidGetClient, OnDidGetClient) |
| IPC_MESSAGE_HANDLER(ServiceWorkerMsg_DidGetClients, OnDidGetClients) |
| IPC_MESSAGE_HANDLER(ServiceWorkerMsg_OpenWindowResponse, |
| OnOpenWindowResponse) |
| @@ -298,6 +299,15 @@ blink::WebURL ServiceWorkerContextClient::scope() const { |
| return service_worker_scope_; |
| } |
| +void ServiceWorkerContextClient::getClient( |
| + const blink::WebString& id, |
| + blink::WebServiceWorkerClientCallbacks* callbacks) { |
| + DCHECK(callbacks); |
| + int request_id = context_->client_callbacks.Add(callbacks); |
| + Send(new ServiceWorkerHostMsg_GetClient( |
| + GetRoutingID(), request_id, base::UTF16ToUTF8(base::StringPiece16(id)))); |
| +} |
| + |
| void ServiceWorkerContextClient::getClients( |
| const blink::WebServiceWorkerClientQueryOptions& weboptions, |
| blink::WebServiceWorkerClientsCallbacks* callbacks) { |
| @@ -872,6 +882,21 @@ void ServiceWorkerContextClient::OnCrossOriginMessageToWorker( |
| proxy_->dispatchCrossOriginMessageEvent(web_client, message, ports); |
| } |
| +void ServiceWorkerContextClient::OnDidGetClient( |
| + int request_id, |
| + const ServiceWorkerClientInfo& client) { |
| + TRACE_EVENT0("ServiceWorker", "ServiceWorkerContextClient::OnDidGetClient"); |
| + blink::WebServiceWorkerClientCallbacks* callbacks = |
| + context_->client_callbacks.Lookup(request_id); |
| + if (!callbacks) { |
| + NOTREACHED() << "Got stray response: " << request_id; |
| + return; |
| + } |
| + callbacks->onSuccess(adoptWebPtr(new blink::WebServiceWorkerClientInfo( |
|
nhiroki
2016/02/19 05:18:31
It looks like this fails compile steps on Win bot.
jungkees
2016/02/22 14:05:09
Addressed. Also, I changed this part of the code t
|
| + ToWebServiceWorkerClientInfo(client)))); |
| + context_->client_callbacks.Remove(request_id); |
| +} |
| + |
| void ServiceWorkerContextClient::OnDidGetClients( |
| int request_id, const std::vector<ServiceWorkerClientInfo>& clients) { |
| TRACE_EVENT0("ServiceWorker", |