OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/renderer/service_worker/service_worker_context_client.h" | 5 #include "content/renderer/service_worker/service_worker_context_client.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/lazy_instance.h" | 10 #include "base/lazy_instance.h" |
(...skipping 14 matching lines...) Expand all Loading... |
25 #include "content/child/service_worker/service_worker_network_provider.h" | 25 #include "content/child/service_worker/service_worker_network_provider.h" |
26 #include "content/child/service_worker/service_worker_provider_context.h" | 26 #include "content/child/service_worker/service_worker_provider_context.h" |
27 #include "content/child/service_worker/service_worker_registration_handle_refere
nce.h" | 27 #include "content/child/service_worker/service_worker_registration_handle_refere
nce.h" |
28 #include "content/child/service_worker/web_service_worker_impl.h" | 28 #include "content/child/service_worker/web_service_worker_impl.h" |
29 #include "content/child/service_worker/web_service_worker_provider_impl.h" | 29 #include "content/child/service_worker/web_service_worker_provider_impl.h" |
30 #include "content/child/service_worker/web_service_worker_registration_impl.h" | 30 #include "content/child/service_worker/web_service_worker_registration_impl.h" |
31 #include "content/child/thread_safe_sender.h" | 31 #include "content/child/thread_safe_sender.h" |
32 #include "content/child/web_data_consumer_handle_impl.h" | 32 #include "content/child/web_data_consumer_handle_impl.h" |
33 #include "content/child/webmessageportchannel_impl.h" | 33 #include "content/child/webmessageportchannel_impl.h" |
34 #include "content/common/devtools_messages.h" | 34 #include "content/common/devtools_messages.h" |
35 #include "content/common/message_port_messages.h" | |
36 #include "content/common/service_worker/embedded_worker_messages.h" | 35 #include "content/common/service_worker/embedded_worker_messages.h" |
37 #include "content/common/service_worker/service_worker_event_dispatcher.mojom.h" | 36 #include "content/common/service_worker/service_worker_event_dispatcher.mojom.h" |
38 #include "content/common/service_worker/service_worker_messages.h" | 37 #include "content/common/service_worker/service_worker_messages.h" |
39 #include "content/common/service_worker/service_worker_status_code.h" | 38 #include "content/common/service_worker/service_worker_status_code.h" |
40 #include "content/common/service_worker/service_worker_utils.h" | 39 #include "content/common/service_worker/service_worker_utils.h" |
41 #include "content/public/common/push_event_payload.h" | 40 #include "content/public/common/push_event_payload.h" |
42 #include "content/public/common/referrer.h" | 41 #include "content/public/common/referrer.h" |
43 #include "content/public/renderer/content_renderer_client.h" | 42 #include "content/public/renderer/content_renderer_client.h" |
44 #include "content/public/renderer/document_state.h" | 43 #include "content/public/renderer/document_state.h" |
45 #include "content/renderer/devtools/devtools_agent.h" | 44 #include "content/renderer/devtools/devtools_agent.h" |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
113 }; | 112 }; |
114 | 113 |
115 void SendPostMessageToClientOnMainThread( | 114 void SendPostMessageToClientOnMainThread( |
116 ThreadSafeSender* sender, | 115 ThreadSafeSender* sender, |
117 int routing_id, | 116 int routing_id, |
118 const std::string& uuid, | 117 const std::string& uuid, |
119 const base::string16& message, | 118 const base::string16& message, |
120 std::unique_ptr<blink::WebMessagePortChannelArray> channels) { | 119 std::unique_ptr<blink::WebMessagePortChannelArray> channels) { |
121 sender->Send(new ServiceWorkerHostMsg_PostMessageToClient( | 120 sender->Send(new ServiceWorkerHostMsg_PostMessageToClient( |
122 routing_id, uuid, message, | 121 routing_id, uuid, message, |
123 WebMessagePortChannelImpl::ExtractMessagePortIDs(std::move(channels)))); | 122 WebMessagePortChannelImpl::ExtractMessagePorts(std::move(channels)))); |
124 } | 123 } |
125 | 124 |
126 blink::WebURLRequest::FetchRequestMode GetBlinkFetchRequestMode( | 125 blink::WebURLRequest::FetchRequestMode GetBlinkFetchRequestMode( |
127 FetchRequestMode mode) { | 126 FetchRequestMode mode) { |
128 return static_cast<blink::WebURLRequest::FetchRequestMode>(mode); | 127 return static_cast<blink::WebURLRequest::FetchRequestMode>(mode); |
129 } | 128 } |
130 | 129 |
131 blink::WebURLRequest::FetchCredentialsMode GetBlinkFetchCredentialsMode( | 130 blink::WebURLRequest::FetchCredentialsMode GetBlinkFetchCredentialsMode( |
132 FetchCredentialsMode credentials_mode) { | 131 FetchCredentialsMode credentials_mode) { |
133 return static_cast<blink::WebURLRequest::FetchCredentialsMode>( | 132 return static_cast<blink::WebURLRequest::FetchCredentialsMode>( |
(...skipping 807 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
941 | 940 |
942 void ServiceWorkerContextClient::DispatchExtendableMessageEvent( | 941 void ServiceWorkerContextClient::DispatchExtendableMessageEvent( |
943 mojom::ExtendableMessageEventPtr event, | 942 mojom::ExtendableMessageEventPtr event, |
944 const DispatchExtendableMessageEventCallback& callback) { | 943 const DispatchExtendableMessageEventCallback& callback) { |
945 TRACE_EVENT0("ServiceWorker", | 944 TRACE_EVENT0("ServiceWorker", |
946 "ServiceWorkerContextClient::DispatchExtendableMessageEvent"); | 945 "ServiceWorkerContextClient::DispatchExtendableMessageEvent"); |
947 int request_id = context_->message_event_callbacks.Add( | 946 int request_id = context_->message_event_callbacks.Add( |
948 base::MakeUnique<DispatchExtendableMessageEventCallback>(callback)); | 947 base::MakeUnique<DispatchExtendableMessageEventCallback>(callback)); |
949 | 948 |
950 blink::WebMessagePortChannelArray ports = | 949 blink::WebMessagePortChannelArray ports = |
951 WebMessagePortChannelImpl::CreatePorts(event->message_ports, | 950 WebMessagePortChannelImpl::CreateFromMessagePipeHandles( |
952 event->new_routing_ids, | 951 std::move(event->message_ports)); |
953 main_thread_task_runner_); | |
954 if (event->source.client_info.IsValid()) { | 952 if (event->source.client_info.IsValid()) { |
955 blink::WebServiceWorkerClientInfo web_client = | 953 blink::WebServiceWorkerClientInfo web_client = |
956 ToWebServiceWorkerClientInfo(event->source.client_info); | 954 ToWebServiceWorkerClientInfo(event->source.client_info); |
957 proxy_->dispatchExtendableMessageEvent( | 955 proxy_->dispatchExtendableMessageEvent( |
958 request_id, blink::WebString::fromUTF16(event->message), | 956 request_id, blink::WebString::fromUTF16(event->message), |
959 event->source_origin, ports, web_client); | 957 event->source_origin, ports, web_client); |
960 return; | 958 return; |
961 } | 959 } |
962 | 960 |
963 DCHECK(event->source.service_worker_info.IsValid()); | 961 DCHECK(event->source.service_worker_info.IsValid()); |
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1280 } | 1278 } |
1281 | 1279 |
1282 base::WeakPtr<ServiceWorkerContextClient> | 1280 base::WeakPtr<ServiceWorkerContextClient> |
1283 ServiceWorkerContextClient::GetWeakPtr() { | 1281 ServiceWorkerContextClient::GetWeakPtr() { |
1284 DCHECK(worker_task_runner_->RunsTasksOnCurrentThread()); | 1282 DCHECK(worker_task_runner_->RunsTasksOnCurrentThread()); |
1285 DCHECK(context_); | 1283 DCHECK(context_); |
1286 return context_->weak_factory.GetWeakPtr(); | 1284 return context_->weak_factory.GetWeakPtr(); |
1287 } | 1285 } |
1288 | 1286 |
1289 } // namespace content | 1287 } // namespace content |
OLD | NEW |