// Copyright 2017 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_SCRIPT_LOADER_FACTORY_H_ #define CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_SCRIPT_LOADER_FACTORY_H_ #include <memory> #include "content/common/content_export.h" #include "mojo/public/cpp/bindings/pending_receiver.h" #include "mojo/public/cpp/bindings/pending_remote.h" #include "mojo/public/cpp/bindings/receiver_set.h" #include "net/base/net_errors.h" #include "services/network/public/mojom/url_loader_factory.mojom.h" class GURL; namespace network { class SharedURLLoaderFactory; } // namespace network namespace content { class ServiceWorkerCacheWriter; class ServiceWorkerContextCore; class ServiceWorkerHost; // Created per one running service worker for loading its scripts. This is kept // alive while the WebServiceWorkerNetworkProvider in the renderer process is // alive. // // This factory handles requests for scripts from service workers that were new // (non-installed) when they started. For service workers that were already // installed when they started, ServiceWorkerInstalledScriptsManager is used // instead. // // This factory creates either a ServiceWorkerNewScriptLoader or a // ServiceWorkerInstalledScriptLoader to load a script. class CONTENT_EXPORT ServiceWorkerScriptLoaderFactory : public network::mojom::URLLoaderFactory { … }; } // namespace content #endif // CONTENT_BROWSER_SERVICE_WORKER_SERVICE_WORKER_SCRIPT_LOADER_FACTORY_H_