Roll src/third_party/WebKit a3b4a2e:7441784 (svn 202551:202552)
[chromium-blink-merge.git] / extensions / browser / declarative_user_script_manager_factory.h
blob3078e14c992fde7969514ae3f8b0fcd6ab11ab7e
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
3 // found in the LICENSE file.
5 #ifndef EXTENSIONS_BROWSER_DECLARATIVE_USER_SCRIPT_MANAGER_FACTORY_H_
6 #define EXTENSIONS_BROWSER_DECLARATIVE_USER_SCRIPT_MANAGER_FACTORY_H_
8 #include "base/memory/singleton.h"
9 #include "components/keyed_service/content/browser_context_keyed_service_factory.h"
11 namespace extensions {
13 class DeclarativeUserScriptManager;
15 class DeclarativeUserScriptManagerFactory
16 : public BrowserContextKeyedServiceFactory {
17 public:
18 static DeclarativeUserScriptManager* GetForBrowserContext(
19 content::BrowserContext* context);
20 static DeclarativeUserScriptManagerFactory* GetInstance();
22 private:
23 friend struct base::DefaultSingletonTraits<
24 DeclarativeUserScriptManagerFactory>;
26 DeclarativeUserScriptManagerFactory();
27 ~DeclarativeUserScriptManagerFactory() override;
29 // BrowserContextKeyedServiceFactory implementation
30 KeyedService* BuildServiceInstanceFor(
31 content::BrowserContext* context) const override;
32 content::BrowserContext* GetBrowserContextToUse(
33 content::BrowserContext* context) const override;
35 DISALLOW_COPY_AND_ASSIGN(DeclarativeUserScriptManagerFactory);
38 } // namespace extensions
40 #endif // EXTENSIONS_BROWSER_DECLARATIVE_USER_SCRIPT_MANAGER_FACTORY_H_