OLD | NEW |
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_GEOLOCATION_CHROME_GEOLOCATION_PERMISSION_CONTEXT_FACTORY
_H_ | 5 #ifndef CHROME_BROWSER_GEOLOCATION_CHROME_GEOLOCATION_PERMISSION_CONTEXT_FACTORY
_H_ |
6 #define CHROME_BROWSER_GEOLOCATION_CHROME_GEOLOCATION_PERMISSION_CONTEXT_FACTORY
_H_ | 6 #define CHROME_BROWSER_GEOLOCATION_CHROME_GEOLOCATION_PERMISSION_CONTEXT_FACTORY
_H_ |
7 | 7 |
| 8 #include "base/memory/singleton.h" |
8 #include "base/values.h" | 9 #include "base/values.h" |
9 #include "chrome/browser/prefs/pref_service.h" | 10 #include "chrome/browser/prefs/pref_service.h" |
| 11 #include "chrome/browser/profiles/profile_keyed_service_factory.h" |
10 | 12 |
11 class ChromeGeolocationPermissionContext; | 13 class ChromeGeolocationPermissionContext; |
12 class Profile; | 14 class Profile; |
13 | 15 |
14 class ChromeGeolocationPermissionContextFactory { | 16 class ChromeGeolocationPermissionContextFactory |
| 17 : public ProfileKeyedServiceFactory { |
15 public: | 18 public: |
16 ChromeGeolocationPermissionContextFactory() {} | 19 static ChromeGeolocationPermissionContext* GetForProfile(Profile* profile); |
17 ~ChromeGeolocationPermissionContextFactory() {} | 20 |
18 static ChromeGeolocationPermissionContext* Create(Profile* profile); | 21 static ChromeGeolocationPermissionContextFactory* GetInstance(); |
19 static void RegisterUserPrefs(PrefServiceSyncable* user_prefs); | |
20 | 22 |
21 private: | 23 private: |
| 24 friend struct |
| 25 DefaultSingletonTraits<ChromeGeolocationPermissionContextFactory>; |
| 26 |
| 27 ChromeGeolocationPermissionContextFactory(); |
| 28 virtual ~ChromeGeolocationPermissionContextFactory(); |
| 29 |
| 30 // |ProfileKeyedBaseFactory| methods: |
| 31 virtual ProfileKeyedService* |
| 32 BuildServiceInstanceFor(Profile* profile) const OVERRIDE; |
| 33 virtual void RegisterUserPrefs(PrefServiceSyncable* user_prefs) OVERRIDE; |
| 34 virtual bool ServiceRedirectedInIncognito() const OVERRIDE; |
22 | 35 |
23 DISALLOW_COPY_AND_ASSIGN(ChromeGeolocationPermissionContextFactory); | 36 DISALLOW_COPY_AND_ASSIGN(ChromeGeolocationPermissionContextFactory); |
24 }; | 37 }; |
25 | 38 |
26 #endif // CHROME_BROWSER_GEOLOCATION_CHROME_GEOLOCATION_PERMISSION_CONTEXT_FACT
ORY_H_ | 39 #endif // CHROME_BROWSER_GEOLOCATION_CHROME_GEOLOCATION_PERMISSION_CONTEXT_FACT
ORY_H_ |
OLD | NEW |