| Index: content/browser/service_worker/service_worker_fetch_dispatcher.h
|
| diff --git a/content/browser/service_worker/service_worker_fetch_dispatcher.h b/content/browser/service_worker/service_worker_fetch_dispatcher.h
|
| index c1cd3ed4eb92728fc060b3a0230cd3d61e9af8fe..41bf9219c06a40657b54896ef377e68127d24049 100644
|
| --- a/content/browser/service_worker/service_worker_fetch_dispatcher.h
|
| +++ b/content/browser/service_worker/service_worker_fetch_dispatcher.h
|
| @@ -13,6 +13,7 @@
|
| #include "content/common/service_worker/service_worker_status_code.h"
|
| #include "content/common/service_worker/service_worker_types.h"
|
| #include "content/public/common/resource_type.h"
|
| +#include "net/log/net_log.h"
|
|
|
| namespace content {
|
|
|
| @@ -31,30 +32,41 @@ class CONTENT_EXPORT ServiceWorkerFetchDispatcher {
|
| std::unique_ptr<ServiceWorkerFetchRequest> request,
|
| ServiceWorkerVersion* version,
|
| ResourceType resource_type,
|
| + const net::BoundNetLog& net_log,
|
| const base::Closure& prepare_callback,
|
| const FetchCallback& fetch_callback);
|
| ~ServiceWorkerFetchDispatcher();
|
|
|
| // Dispatches a fetch event to the |version| given in ctor, and fires
|
| - // |callback| (also given in ctor) when finishes.
|
| + // |fetch_callback| (also given in ctor) when finishes. It runs
|
| + // |prepare_callback| as an intermediate step once the version is activated
|
| + // and running.
|
| void Run();
|
|
|
| private:
|
| + void DidWaitForActivation();
|
| void StartWorker();
|
| + void DidStartWorker();
|
| + void DidFailToStartWorker(ServiceWorkerStatusCode status);
|
| void DispatchFetchEvent();
|
| - void DidPrepare();
|
| + void DidFailToDispatch(ServiceWorkerStatusCode status);
|
| void DidFail(ServiceWorkerStatusCode status);
|
| void DidFinish(int request_id,
|
| ServiceWorkerFetchEventResult fetch_result,
|
| const ServiceWorkerResponse& response);
|
| + void Complete(ServiceWorkerStatusCode status,
|
| + ServiceWorkerFetchEventResult fetch_result,
|
| + const ServiceWorkerResponse& response);
|
|
|
| ServiceWorkerMetrics::EventType GetEventType() const;
|
|
|
| scoped_refptr<ServiceWorkerVersion> version_;
|
| + net::BoundNetLog net_log_;
|
| base::Closure prepare_callback_;
|
| FetchCallback fetch_callback_;
|
| std::unique_ptr<ServiceWorkerFetchRequest> request_;
|
| ResourceType resource_type_;
|
| + bool did_complete_;
|
| base::WeakPtrFactory<ServiceWorkerFetchDispatcher> weak_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(ServiceWorkerFetchDispatcher);
|
|
|