Index: content/renderer/service_worker/service_worker_script_context.cc |
diff --git a/content/renderer/service_worker/service_worker_script_context.cc b/content/renderer/service_worker/service_worker_script_context.cc |
index 2f731dba2711ad428a8f99ebe67c289ed580ff27..a6d4b2b198a68120bb56d3ad688780ae645a1a8d 100644 |
--- a/content/renderer/service_worker/service_worker_script_context.cc |
+++ b/content/renderer/service_worker/service_worker_script_context.cc |
@@ -6,6 +6,7 @@ |
#include "base/logging.h" |
#include "base/metrics/histogram.h" |
+#include "base/strings/utf_string_conversions.h" |
#include "base/trace_event/trace_event.h" |
#include "content/child/notifications/notification_data_conversions.h" |
#include "content/child/service_worker/web_service_worker_registration_impl.h" |
@@ -30,14 +31,14 @@ namespace content { |
namespace { |
-void SendPostMessageToDocumentOnMainThread( |
+void SendPostMessageToClientOnMainThread( |
ThreadSafeSender* sender, |
int routing_id, |
- int client_id, |
+ const std::string& uuid, |
const base::string16& message, |
scoped_ptr<blink::WebMessagePortChannelArray> channels) { |
- sender->Send(new ServiceWorkerHostMsg_PostMessageToDocument( |
- routing_id, client_id, message, |
+ sender->Send(new ServiceWorkerHostMsg_PostMessageToClient( |
+ routing_id, uuid, message, |
WebMessagePortChannelImpl::ExtractMessagePortIDs(channels.release()))); |
} |
@@ -81,7 +82,7 @@ ToWebServiceWorkerClientInfo(const ServiceWorkerClientInfo& client_info) { |
blink::WebServiceWorkerClientInfo web_client_info; |
- web_client_info.clientID = client_info.client_id; |
+ web_client_info.uuid = base::UTF8ToUTF16(client_info.client_uuid); |
web_client_info.pageVisibilityState = client_info.page_visibility_state; |
web_client_info.isFocused = client_info.is_focused; |
web_client_info.url = client_info.url; |
@@ -253,8 +254,8 @@ void ServiceWorkerScriptContext::ClearCachedMetadata(const GURL& url) { |
Send(new ServiceWorkerHostMsg_ClearCachedMetadata(GetRoutingID(), url)); |
} |
-void ServiceWorkerScriptContext::PostMessageToDocument( |
- int client_id, |
+void ServiceWorkerScriptContext::PostMessageToClient( |
+ const base::string16& uuid, |
const base::string16& message, |
scoped_ptr<blink::WebMessagePortChannelArray> channels) { |
// This may send channels for MessagePorts, and all internal book-keeping |
@@ -263,9 +264,11 @@ void ServiceWorkerScriptContext::PostMessageToDocument( |
// to overtake those messages. |
embedded_context_->main_thread_task_runner()->PostTask( |
FROM_HERE, |
- base::Bind(&SendPostMessageToDocumentOnMainThread, |
+ base::Bind(&SendPostMessageToClientOnMainThread, |
make_scoped_refptr(embedded_context_->thread_safe_sender()), |
- GetRoutingID(), client_id, message, base::Passed(&channels))); |
+ GetRoutingID(), |
+ base::UTF16ToUTF8(uuid), |
+ message, base::Passed(&channels))); |
} |
void ServiceWorkerScriptContext::PostCrossOriginMessageToClient( |
@@ -284,11 +287,12 @@ void ServiceWorkerScriptContext::PostCrossOriginMessageToClient( |
} |
void ServiceWorkerScriptContext::FocusClient( |
- int client_id, blink::WebServiceWorkerClientCallbacks* callback) { |
+ const base::string16& uuid, |
+ blink::WebServiceWorkerClientCallbacks* callback) { |
DCHECK(callback); |
int request_id = pending_client_callbacks_.Add(callback); |
- Send(new ServiceWorkerHostMsg_FocusClient( |
- GetRoutingID(), request_id, client_id)); |
+ Send(new ServiceWorkerHostMsg_FocusClient(GetRoutingID(), request_id, |
+ base::UTF16ToUTF8(uuid))); |
} |
void ServiceWorkerScriptContext::ClaimClients( |