| Index: content/browser/service_worker/service_worker_fetch_dispatcher.cc
|
| diff --git a/content/browser/service_worker/service_worker_fetch_dispatcher.cc b/content/browser/service_worker/service_worker_fetch_dispatcher.cc
|
| index 2d7712be03d3dac7f8a28928f485cacf13c5f017..d8091b8519745bbe03dc0d8cd5b89dcfdc1b0c68 100644
|
| --- a/content/browser/service_worker/service_worker_fetch_dispatcher.cc
|
| +++ b/content/browser/service_worker/service_worker_fetch_dispatcher.cc
|
| @@ -13,15 +13,37 @@
|
|
|
| namespace content {
|
|
|
| +namespace {
|
| +using EventType = ServiceWorkerMetrics::EventType;
|
| +EventType ResourceTypeToEventType(ResourceType resource_type) {
|
| + switch (resource_type) {
|
| + case RESOURCE_TYPE_MAIN_FRAME:
|
| + return EventType::FETCH_MAIN_FRAME;
|
| + case RESOURCE_TYPE_SUB_FRAME:
|
| + return EventType::FETCH_SUB_FRAME;
|
| + case RESOURCE_TYPE_SHARED_WORKER:
|
| + return EventType::FETCH_SHARED_WORKER;
|
| + case RESOURCE_TYPE_SERVICE_WORKER:
|
| + case RESOURCE_TYPE_LAST_TYPE:
|
| + NOTREACHED() << resource_type;
|
| + return EventType::FETCH_SUB_RESOURCE;
|
| + default:
|
| + return EventType::FETCH_SUB_RESOURCE;
|
| + }
|
| +}
|
| +} // namespace
|
| +
|
| ServiceWorkerFetchDispatcher::ServiceWorkerFetchDispatcher(
|
| scoped_ptr<ServiceWorkerFetchRequest> request,
|
| ServiceWorkerVersion* version,
|
| + ResourceType resource_type,
|
| const base::Closure& prepare_callback,
|
| const FetchCallback& fetch_callback)
|
| : version_(version),
|
| prepare_callback_(prepare_callback),
|
| fetch_callback_(fetch_callback),
|
| request_(std::move(request)),
|
| + resource_type_(resource_type),
|
| weak_factory_(this) {}
|
|
|
| ServiceWorkerFetchDispatcher::~ServiceWorkerFetchDispatcher() {}
|
| @@ -47,6 +69,7 @@ void ServiceWorkerFetchDispatcher::DidWaitActivation() {
|
| return;
|
| }
|
| version_->RunAfterStartWorker(
|
| + ResourceTypeToEventType(resource_type_),
|
| base::Bind(&ServiceWorkerFetchDispatcher::DispatchFetchEvent,
|
| weak_factory_.GetWeakPtr()),
|
| base::Bind(&ServiceWorkerFetchDispatcher::DidFail,
|
|
|