Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(339)

Side by Side Diff: chrome/browser/extensions/extension_system_factory.h

Issue 137753016: ExtensionSystem cleanup part 2 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: deps Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 CHROME_BROWSER_EXTENSIONS_EXTENSION_SYSTEM_FACTORY_H_ 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_SYSTEM_FACTORY_H_
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_SYSTEM_FACTORY_H_ 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_SYSTEM_FACTORY_H_
7 7
8 #include "base/memory/singleton.h" 8 #include "base/memory/singleton.h"
9 #include "chrome/browser/extensions/extension_system_impl.h" 9 #include "chrome/browser/extensions/extension_system_impl.h"
10 #include "components/browser_context_keyed_service/browser_context_keyed_service _factory.h" 10 #include "components/browser_context_keyed_service/browser_context_keyed_service _factory.h"
11 #include "extensions/browser/extension_system.h" 11 #include "extensions/browser/extension_system_provider.h"
12 12
13 class BrowserContextKeyedService; 13 class BrowserContextKeyedService;
14 14
15 namespace extensions { 15 namespace extensions {
16 class ExtensionSystem; 16 class ExtensionSystem;
17 17
18 // BrowserContextKeyedServiceFactory for ExtensionSystemImpl::Shared. 18 // BrowserContextKeyedServiceFactory for ExtensionSystemImpl::Shared.
19 // Should not be used except by ExtensionSystem(Factory). 19 // Should not be used except by ExtensionSystem(Factory).
20 class ExtensionSystemSharedFactory : public BrowserContextKeyedServiceFactory { 20 class ExtensionSystemSharedFactory : public BrowserContextKeyedServiceFactory {
21 public: 21 public:
22 static ExtensionSystemImpl::Shared* GetForBrowserContext( 22 static ExtensionSystemImpl::Shared* GetForBrowserContext(
23 content::BrowserContext* context); 23 content::BrowserContext* context);
24 24
25 static ExtensionSystemSharedFactory* GetInstance(); 25 static ExtensionSystemSharedFactory* GetInstance();
26 26
27 private: 27 private:
28 friend struct DefaultSingletonTraits<ExtensionSystemSharedFactory>; 28 friend struct DefaultSingletonTraits<ExtensionSystemSharedFactory>;
29 29
30 ExtensionSystemSharedFactory(); 30 ExtensionSystemSharedFactory();
31 virtual ~ExtensionSystemSharedFactory(); 31 virtual ~ExtensionSystemSharedFactory();
32 32
33 // BrowserContextKeyedServiceFactory implementation: 33 // BrowserContextKeyedServiceFactory implementation:
34 virtual BrowserContextKeyedService* BuildServiceInstanceFor( 34 virtual BrowserContextKeyedService* BuildServiceInstanceFor(
35 content::BrowserContext* context) const OVERRIDE; 35 content::BrowserContext* context) const OVERRIDE;
36 virtual content::BrowserContext* GetBrowserContextToUse( 36 virtual content::BrowserContext* GetBrowserContextToUse(
37 content::BrowserContext* context) const OVERRIDE; 37 content::BrowserContext* context) const OVERRIDE;
38 }; 38 };
39 39
40 // BrowserContextKeyedServiceFactory for ExtensionSystem. 40 // BrowserContextKeyedServiceFactory for ExtensionSystemImpl.
41 class ExtensionSystemFactory : public BrowserContextKeyedServiceFactory { 41 // TODO(yoz): Rename to ExtensionSystemImplFactory.
42 class ExtensionSystemFactory : public ExtensionSystemProvider {
42 public: 43 public:
43 static ExtensionSystem* GetForBrowserContext( 44 virtual ExtensionSystem* GetForBrowserContext(
James Cook 2014/02/12 17:18:12 nit: comment which interface you are overriding
Yoyo Zhou 2014/02/12 23:32:10 Done.
44 content::BrowserContext* context); 45 content::BrowserContext* context) OVERRIDE;
45 46
46 static ExtensionSystemFactory* GetInstance(); 47 static ExtensionSystemFactory* GetInstance();
47 48
48 private: 49 private:
49 friend struct DefaultSingletonTraits<ExtensionSystemFactory>; 50 friend struct DefaultSingletonTraits<ExtensionSystemFactory>;
50 51
51 ExtensionSystemFactory(); 52 ExtensionSystemFactory();
52 virtual ~ExtensionSystemFactory(); 53 virtual ~ExtensionSystemFactory();
53 54
54 // BrowserContextKeyedServiceFactory implementation: 55 // BrowserContextKeyedServiceFactory implementation:
55 virtual BrowserContextKeyedService* BuildServiceInstanceFor( 56 virtual BrowserContextKeyedService* BuildServiceInstanceFor(
56 content::BrowserContext* context) const OVERRIDE; 57 content::BrowserContext* context) const OVERRIDE;
57 virtual content::BrowserContext* GetBrowserContextToUse( 58 virtual content::BrowserContext* GetBrowserContextToUse(
58 content::BrowserContext* context) const OVERRIDE; 59 content::BrowserContext* context) const OVERRIDE;
59 virtual bool ServiceIsCreatedWithBrowserContext() const OVERRIDE; 60 virtual bool ServiceIsCreatedWithBrowserContext() const OVERRIDE;
60 }; 61 };
61 62
62 } // namespace extensions 63 } // namespace extensions
63 64
64 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_SYSTEM_FACTORY_H_ 65 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_SYSTEM_FACTORY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698