| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 #ifndef CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_VERSION_H_ | 5 #ifndef CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_VERSION_H_ |
| 6 #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_VERSION_H_ | 6 #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_VERSION_H_ |
| 7 | 7 |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <functional> | 10 #include <functional> |
| (...skipping 15 matching lines...) Expand all Loading... |
| 26 #include "base/timer/timer.h" | 26 #include "base/timer/timer.h" |
| 27 #include "content/browser/service_worker/embedded_worker_instance.h" | 27 #include "content/browser/service_worker/embedded_worker_instance.h" |
| 28 #include "content/browser/service_worker/service_worker_metrics.h" | 28 #include "content/browser/service_worker/service_worker_metrics.h" |
| 29 #include "content/browser/service_worker/service_worker_script_cache_map.h" | 29 #include "content/browser/service_worker/service_worker_script_cache_map.h" |
| 30 #include "content/common/content_export.h" | 30 #include "content/common/content_export.h" |
| 31 #include "content/common/service_worker/service_worker_status_code.h" | 31 #include "content/common/service_worker/service_worker_status_code.h" |
| 32 #include "content/common/service_worker/service_worker_types.h" | 32 #include "content/common/service_worker/service_worker_types.h" |
| 33 #include "content/public/common/service_registry.h" | 33 #include "content/public/common/service_registry.h" |
| 34 #include "ipc/ipc_message.h" | 34 #include "ipc/ipc_message.h" |
| 35 #include "third_party/WebKit/public/platform/modules/serviceworker/WebServiceWor
kerEventResult.h" | 35 #include "third_party/WebKit/public/platform/modules/serviceworker/WebServiceWor
kerEventResult.h" |
| 36 #include "url/gurl.h" |
| 37 #include "url/origin.h" |
| 36 | 38 |
| 37 // Windows headers will redefine SendMessage. | 39 // Windows headers will redefine SendMessage. |
| 38 #ifdef SendMessage | 40 #ifdef SendMessage |
| 39 #undef SendMessage | 41 #undef SendMessage |
| 40 #endif | 42 #endif |
| 41 | 43 |
| 42 class GURL; | |
| 43 | |
| 44 namespace net { | 44 namespace net { |
| 45 class HttpResponseInfo; | 45 class HttpResponseInfo; |
| 46 } | 46 } |
| 47 | 47 |
| 48 namespace content { | 48 namespace content { |
| 49 | 49 |
| 50 class EmbeddedWorkerRegistry; | 50 class EmbeddedWorkerRegistry; |
| 51 class ServiceWorkerContextCore; | 51 class ServiceWorkerContextCore; |
| 52 class ServiceWorkerProviderHost; | 52 class ServiceWorkerProviderHost; |
| 53 class ServiceWorkerRegistration; | 53 class ServiceWorkerRegistration; |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 139 ServiceWorkerVersionInfo GetInfo(); | 139 ServiceWorkerVersionInfo GetInfo(); |
| 140 Status status() const { return status_; } | 140 Status status() const { return status_; } |
| 141 | 141 |
| 142 const std::vector<GURL>& foreign_fetch_scopes() const { | 142 const std::vector<GURL>& foreign_fetch_scopes() const { |
| 143 return foreign_fetch_scopes_; | 143 return foreign_fetch_scopes_; |
| 144 } | 144 } |
| 145 void set_foreign_fetch_scopes(const std::vector<GURL>& scopes) { | 145 void set_foreign_fetch_scopes(const std::vector<GURL>& scopes) { |
| 146 foreign_fetch_scopes_ = scopes; | 146 foreign_fetch_scopes_ = scopes; |
| 147 } | 147 } |
| 148 | 148 |
| 149 const std::vector<url::Origin>& foreign_fetch_origins() const { |
| 150 return foreign_fetch_origins_; |
| 151 } |
| 152 void set_foreign_fetch_origins(const std::vector<url::Origin>& origins) { |
| 153 foreign_fetch_origins_ = origins; |
| 154 } |
| 155 |
| 149 // This sets the new status and also run status change callbacks | 156 // This sets the new status and also run status change callbacks |
| 150 // if there're any (see RegisterStatusChangeCallback). | 157 // if there're any (see RegisterStatusChangeCallback). |
| 151 void SetStatus(Status status); | 158 void SetStatus(Status status); |
| 152 | 159 |
| 153 // Registers status change callback. (This is for one-off observation, | 160 // Registers status change callback. (This is for one-off observation, |
| 154 // the consumer needs to re-register if it wants to continue observing | 161 // the consumer needs to re-register if it wants to continue observing |
| 155 // status changes) | 162 // status changes) |
| 156 void RegisterStatusChangeCallback(const base::Closure& callback); | 163 void RegisterStatusChangeCallback(const base::Closure& callback); |
| 157 | 164 |
| 158 // Starts an embedded worker for this version. | 165 // Starts an embedded worker for this version. |
| (...skipping 399 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 558 const std::string& client_uuid, | 565 const std::string& client_uuid, |
| 559 const ServiceWorkerClientInfo& client); | 566 const ServiceWorkerClientInfo& client); |
| 560 void OnSkipWaiting(int request_id); | 567 void OnSkipWaiting(int request_id); |
| 561 void OnClaimClients(int request_id); | 568 void OnClaimClients(int request_id); |
| 562 void OnPongFromWorker(); | 569 void OnPongFromWorker(); |
| 563 | 570 |
| 564 void OnFocusClientFinished(int request_id, | 571 void OnFocusClientFinished(int request_id, |
| 565 const std::string& client_uuid, | 572 const std::string& client_uuid, |
| 566 const ServiceWorkerClientInfo& client); | 573 const ServiceWorkerClientInfo& client); |
| 567 | 574 |
| 568 void OnRegisterForeignFetchScopes(const std::vector<GURL>& sub_scopes); | 575 void OnRegisterForeignFetchScopes(const std::vector<GURL>& sub_scopes, |
| 576 const std::vector<url::Origin>& origins); |
| 569 | 577 |
| 570 void DidEnsureLiveRegistrationForStartWorker( | 578 void DidEnsureLiveRegistrationForStartWorker( |
| 571 const StatusCallback& callback, | 579 const StatusCallback& callback, |
| 572 ServiceWorkerStatusCode status, | 580 ServiceWorkerStatusCode status, |
| 573 const scoped_refptr<ServiceWorkerRegistration>& registration); | 581 const scoped_refptr<ServiceWorkerRegistration>& registration); |
| 574 void StartWorkerInternal(); | 582 void StartWorkerInternal(); |
| 575 | 583 |
| 576 void DidSkipWaiting(int request_id); | 584 void DidSkipWaiting(int request_id); |
| 577 | 585 |
| 578 void OnGetClientsFinished(int request_id, ServiceWorkerClients* clients); | 586 void OnGetClientsFinished(int request_id, ServiceWorkerClients* clients); |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 641 // Called at the beginning of each Dispatch*Event function: records | 649 // Called at the beginning of each Dispatch*Event function: records |
| 642 // the time elapsed since idle (generally the time since the previous | 650 // the time elapsed since idle (generally the time since the previous |
| 643 // event ended). | 651 // event ended). |
| 644 void OnBeginEvent(); | 652 void OnBeginEvent(); |
| 645 | 653 |
| 646 const int64_t version_id_; | 654 const int64_t version_id_; |
| 647 const int64_t registration_id_; | 655 const int64_t registration_id_; |
| 648 const GURL script_url_; | 656 const GURL script_url_; |
| 649 const GURL scope_; | 657 const GURL scope_; |
| 650 std::vector<GURL> foreign_fetch_scopes_; | 658 std::vector<GURL> foreign_fetch_scopes_; |
| 659 std::vector<url::Origin> foreign_fetch_origins_; |
| 651 | 660 |
| 652 Status status_ = NEW; | 661 Status status_ = NEW; |
| 653 scoped_ptr<EmbeddedWorkerInstance> embedded_worker_; | 662 scoped_ptr<EmbeddedWorkerInstance> embedded_worker_; |
| 654 std::vector<StatusCallback> start_callbacks_; | 663 std::vector<StatusCallback> start_callbacks_; |
| 655 std::vector<StatusCallback> stop_callbacks_; | 664 std::vector<StatusCallback> stop_callbacks_; |
| 656 std::vector<base::Closure> status_change_callbacks_; | 665 std::vector<base::Closure> status_change_callbacks_; |
| 657 | 666 |
| 658 // Message callbacks. (Update HasInflightRequests() too when you update this | 667 // Message callbacks. (Update HasInflightRequests() too when you update this |
| 659 // list.) | 668 // list.) |
| 660 IDMap<PendingRequest<StatusCallback>, IDMapOwnPointer> custom_requests_; | 669 IDMap<PendingRequest<StatusCallback>, IDMapOwnPointer> custom_requests_; |
| (...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 795 | 804 |
| 796 // At this point |this| can have been deleted, so don't do anything other | 805 // At this point |this| can have been deleted, so don't do anything other |
| 797 // than returning. | 806 // than returning. |
| 798 | 807 |
| 799 return true; | 808 return true; |
| 800 } | 809 } |
| 801 | 810 |
| 802 } // namespace content | 811 } // namespace content |
| 803 | 812 |
| 804 #endif // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_VERSION_H_ | 813 #endif // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_VERSION_H_ |
| OLD | NEW |