| 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 488 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 499 GetRoutingID(), request_id, result)); | 499 GetRoutingID(), request_id, result)); |
| 500 } | 500 } |
| 501 | 501 |
| 502 void ServiceWorkerContextClient::didHandleInstallEvent( | 502 void ServiceWorkerContextClient::didHandleInstallEvent( |
| 503 int request_id, | 503 int request_id, |
| 504 blink::WebServiceWorkerEventResult result) { | 504 blink::WebServiceWorkerEventResult result) { |
| 505 Send(new ServiceWorkerHostMsg_InstallEventFinished( | 505 Send(new ServiceWorkerHostMsg_InstallEventFinished( |
| 506 GetRoutingID(), request_id, result, proxy_->hasFetchEventHandler())); | 506 GetRoutingID(), request_id, result, proxy_->hasFetchEventHandler())); |
| 507 } | 507 } |
| 508 | 508 |
| 509 void ServiceWorkerContextClient::didHandleFetchEvent(int request_id) { | 509 void ServiceWorkerContextClient::respondToFetchEvent(int response_id) { |
| 510 Send(new ServiceWorkerHostMsg_FetchEventFinished( | 510 Send(new ServiceWorkerHostMsg_FetchEventResponse( |
| 511 GetRoutingID(), request_id, | 511 GetRoutingID(), response_id, SERVICE_WORKER_FETCH_EVENT_RESULT_FALLBACK, |
| 512 SERVICE_WORKER_FETCH_EVENT_RESULT_FALLBACK, | |
| 513 ServiceWorkerResponse())); | 512 ServiceWorkerResponse())); |
| 514 } | 513 } |
| 515 | 514 |
| 516 void ServiceWorkerContextClient::didHandleFetchEvent( | 515 void ServiceWorkerContextClient::respondToFetchEvent( |
| 517 int request_id, | 516 int response_id, |
| 518 const blink::WebServiceWorkerResponse& web_response) { | 517 const blink::WebServiceWorkerResponse& web_response) { |
| 519 ServiceWorkerHeaderMap headers; | 518 ServiceWorkerHeaderMap headers; |
| 520 GetServiceWorkerHeaderMapFromWebResponse(web_response, &headers); | 519 GetServiceWorkerHeaderMapFromWebResponse(web_response, &headers); |
| 521 ServiceWorkerHeaderList cors_exposed_header_names; | 520 ServiceWorkerHeaderList cors_exposed_header_names; |
| 522 GetCorsExposedHeaderNamesFromWebResponse(web_response, | 521 GetCorsExposedHeaderNamesFromWebResponse(web_response, |
| 523 &cors_exposed_header_names); | 522 &cors_exposed_header_names); |
| 524 ServiceWorkerResponse response( | 523 ServiceWorkerResponse response( |
| 525 web_response.url(), web_response.status(), | 524 web_response.url(), web_response.status(), |
| 526 web_response.statusText().utf8(), web_response.responseType(), headers, | 525 web_response.statusText().utf8(), web_response.responseType(), headers, |
| 527 web_response.blobUUID().utf8(), web_response.blobSize(), | 526 web_response.blobUUID().utf8(), web_response.blobSize(), |
| 528 web_response.streamURL(), web_response.error(), | 527 web_response.streamURL(), web_response.error(), |
| 529 base::Time::FromInternalValue(web_response.responseTime()), | 528 base::Time::FromInternalValue(web_response.responseTime()), |
| 530 !web_response.cacheStorageCacheName().isNull(), | 529 !web_response.cacheStorageCacheName().isNull(), |
| 531 web_response.cacheStorageCacheName().utf8(), cors_exposed_header_names); | 530 web_response.cacheStorageCacheName().utf8(), cors_exposed_header_names); |
| 532 Send(new ServiceWorkerHostMsg_FetchEventFinished( | 531 Send(new ServiceWorkerHostMsg_FetchEventResponse( |
| 533 GetRoutingID(), request_id, | 532 GetRoutingID(), response_id, SERVICE_WORKER_FETCH_EVENT_RESULT_RESPONSE, |
| 534 SERVICE_WORKER_FETCH_EVENT_RESULT_RESPONSE, | |
| 535 response)); | 533 response)); |
| 536 } | 534 } |
| 537 | 535 |
| 536 void ServiceWorkerContextClient::didHandleFetchEvent( |
| 537 int event_finish_id, |
| 538 blink::WebServiceWorkerEventResult result) { |
| 539 Send(new ServiceWorkerHostMsg_FetchEventFinished(GetRoutingID(), |
| 540 event_finish_id, result)); |
| 541 } |
| 542 |
| 538 void ServiceWorkerContextClient::didHandleNotificationClickEvent( | 543 void ServiceWorkerContextClient::didHandleNotificationClickEvent( |
| 539 int request_id, | 544 int request_id, |
| 540 blink::WebServiceWorkerEventResult result) { | 545 blink::WebServiceWorkerEventResult result) { |
| 541 Send(new ServiceWorkerHostMsg_NotificationClickEventFinished( | 546 Send(new ServiceWorkerHostMsg_NotificationClickEventFinished( |
| 542 GetRoutingID(), request_id, result)); | 547 GetRoutingID(), request_id, result)); |
| 543 } | 548 } |
| 544 | 549 |
| 545 void ServiceWorkerContextClient::didHandleNotificationCloseEvent( | 550 void ServiceWorkerContextClient::didHandleNotificationCloseEvent( |
| 546 int request_id, | 551 int request_id, |
| 547 blink::WebServiceWorkerEventResult result) { | 552 blink::WebServiceWorkerEventResult result) { |
| (...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 756 WebServiceWorkerImpl::CreateHandle(worker)); | 761 WebServiceWorkerImpl::CreateHandle(worker)); |
| 757 } | 762 } |
| 758 | 763 |
| 759 void ServiceWorkerContextClient::OnInstallEvent(int request_id) { | 764 void ServiceWorkerContextClient::OnInstallEvent(int request_id) { |
| 760 TRACE_EVENT0("ServiceWorker", | 765 TRACE_EVENT0("ServiceWorker", |
| 761 "ServiceWorkerContextClient::OnInstallEvent"); | 766 "ServiceWorkerContextClient::OnInstallEvent"); |
| 762 proxy_->dispatchInstallEvent(request_id); | 767 proxy_->dispatchInstallEvent(request_id); |
| 763 } | 768 } |
| 764 | 769 |
| 765 void ServiceWorkerContextClient::OnFetchEvent( | 770 void ServiceWorkerContextClient::OnFetchEvent( |
| 766 int request_id, | 771 int response_id, |
| 772 int event_finish_id, |
| 767 const ServiceWorkerFetchRequest& request) { | 773 const ServiceWorkerFetchRequest& request) { |
| 768 blink::WebServiceWorkerRequest webRequest; | 774 blink::WebServiceWorkerRequest webRequest; |
| 769 TRACE_EVENT0("ServiceWorker", | 775 TRACE_EVENT0("ServiceWorker", |
| 770 "ServiceWorkerContextClient::OnFetchEvent"); | 776 "ServiceWorkerContextClient::OnFetchEvent"); |
| 771 webRequest.setURL(blink::WebURL(request.url)); | 777 webRequest.setURL(blink::WebURL(request.url)); |
| 772 webRequest.setMethod(blink::WebString::fromUTF8(request.method)); | 778 webRequest.setMethod(blink::WebString::fromUTF8(request.method)); |
| 773 for (ServiceWorkerHeaderMap::const_iterator it = request.headers.begin(); | 779 for (ServiceWorkerHeaderMap::const_iterator it = request.headers.begin(); |
| 774 it != request.headers.end(); | 780 it != request.headers.end(); |
| 775 ++it) { | 781 ++it) { |
| 776 webRequest.setHeader(blink::WebString::fromUTF8(it->first), | 782 webRequest.setHeader(blink::WebString::fromUTF8(it->first), |
| (...skipping 10 matching lines...) Expand all Loading... |
| 787 webRequest.setIsMainResourceLoad(request.is_main_resource_load); | 793 webRequest.setIsMainResourceLoad(request.is_main_resource_load); |
| 788 webRequest.setCredentialsMode( | 794 webRequest.setCredentialsMode( |
| 789 GetBlinkFetchCredentialsMode(request.credentials_mode)); | 795 GetBlinkFetchCredentialsMode(request.credentials_mode)); |
| 790 webRequest.setRedirectMode(GetBlinkFetchRedirectMode(request.redirect_mode)); | 796 webRequest.setRedirectMode(GetBlinkFetchRedirectMode(request.redirect_mode)); |
| 791 webRequest.setRequestContext( | 797 webRequest.setRequestContext( |
| 792 GetBlinkRequestContext(request.request_context_type)); | 798 GetBlinkRequestContext(request.request_context_type)); |
| 793 webRequest.setFrameType(GetBlinkFrameType(request.frame_type)); | 799 webRequest.setFrameType(GetBlinkFrameType(request.frame_type)); |
| 794 webRequest.setClientId(blink::WebString::fromUTF8(request.client_id)); | 800 webRequest.setClientId(blink::WebString::fromUTF8(request.client_id)); |
| 795 webRequest.setIsReload(request.is_reload); | 801 webRequest.setIsReload(request.is_reload); |
| 796 if (request.fetch_type == ServiceWorkerFetchType::FOREIGN_FETCH) { | 802 if (request.fetch_type == ServiceWorkerFetchType::FOREIGN_FETCH) { |
| 797 proxy_->dispatchForeignFetchEvent(request_id, webRequest); | 803 proxy_->dispatchForeignFetchEvent(response_id, event_finish_id, webRequest); |
| 798 } else { | 804 } else { |
| 799 proxy_->dispatchFetchEvent(request_id, webRequest); | 805 proxy_->dispatchFetchEvent(response_id, event_finish_id, webRequest); |
| 800 } | 806 } |
| 801 } | 807 } |
| 802 | 808 |
| 803 void ServiceWorkerContextClient::OnNotificationClickEvent( | 809 void ServiceWorkerContextClient::OnNotificationClickEvent( |
| 804 int request_id, | 810 int request_id, |
| 805 int64_t persistent_notification_id, | 811 int64_t persistent_notification_id, |
| 806 const PlatformNotificationData& notification_data, | 812 const PlatformNotificationData& notification_data, |
| 807 int action_index) { | 813 int action_index) { |
| 808 TRACE_EVENT0("ServiceWorker", | 814 TRACE_EVENT0("ServiceWorker", |
| 809 "ServiceWorkerContextClient::OnNotificationClickEvent"); | 815 "ServiceWorkerContextClient::OnNotificationClickEvent"); |
| (...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1024 } | 1030 } |
| 1025 | 1031 |
| 1026 base::WeakPtr<ServiceWorkerContextClient> | 1032 base::WeakPtr<ServiceWorkerContextClient> |
| 1027 ServiceWorkerContextClient::GetWeakPtr() { | 1033 ServiceWorkerContextClient::GetWeakPtr() { |
| 1028 DCHECK(worker_task_runner_->RunsTasksOnCurrentThread()); | 1034 DCHECK(worker_task_runner_->RunsTasksOnCurrentThread()); |
| 1029 DCHECK(context_); | 1035 DCHECK(context_); |
| 1030 return context_->weak_factory.GetWeakPtr(); | 1036 return context_->weak_factory.GetWeakPtr(); |
| 1031 } | 1037 } |
| 1032 | 1038 |
| 1033 } // namespace content | 1039 } // namespace content |
| OLD | NEW |