OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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_POLICY_CONFIGURATION_POLICY_PREF_STORE_H_ | 5 #ifndef CHROME_BROWSER_POLICY_CONFIGURATION_POLICY_PREF_STORE_H_ |
6 #define CHROME_BROWSER_POLICY_CONFIGURATION_POLICY_PREF_STORE_H_ | 6 #define CHROME_BROWSER_POLICY_CONFIGURATION_POLICY_PREF_STORE_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <set> | 9 #include <set> |
10 #include <string> | 10 #include <string> |
11 | 11 |
12 #include "base/basictypes.h" | 12 #include "base/basictypes.h" |
13 #include "base/gtest_prod_util.h" | 13 #include "base/gtest_prod_util.h" |
14 #include "base/scoped_ptr.h" | 14 #include "base/scoped_ptr.h" |
15 #include "base/values.h" | 15 #include "base/values.h" |
16 #include "chrome/browser/policy/configuration_policy_provider.h" | 16 #include "chrome/browser/policy/configuration_policy_provider.h" |
17 #include "chrome/browser/policy/configuration_policy_store_interface.h" | 17 #include "chrome/browser/policy/configuration_policy_store_interface.h" |
18 #include "chrome/common/pref_store.h" | 18 #include "chrome/common/pref_store.h" |
19 | 19 |
| 20 class Profile; |
| 21 |
20 namespace policy { | 22 namespace policy { |
21 | 23 |
22 // An implementation of the |PrefStore| that holds a Dictionary | 24 // An implementation of the |PrefStore| that holds a Dictionary |
23 // created through applied policy. | 25 // created through applied policy. |
24 class ConfigurationPolicyPrefStore : public PrefStore, | 26 class ConfigurationPolicyPrefStore : public PrefStore, |
25 public ConfigurationPolicyStoreInterface { | 27 public ConfigurationPolicyStoreInterface { |
26 public: | 28 public: |
27 typedef std::set<const char*> ProxyPreferenceSet; | 29 typedef std::set<const char*> ProxyPreferenceSet; |
28 | 30 |
29 // The ConfigurationPolicyPrefStore does not take ownership of the | 31 // The ConfigurationPolicyPrefStore does not take ownership of the |
30 // passed-in |provider|. | 32 // passed-in |provider|. |
31 explicit ConfigurationPolicyPrefStore(ConfigurationPolicyProvider* provider); | 33 explicit ConfigurationPolicyPrefStore(ConfigurationPolicyProvider* provider); |
32 virtual ~ConfigurationPolicyPrefStore() {} | 34 virtual ~ConfigurationPolicyPrefStore() {} |
33 | 35 |
34 // PrefStore methods: | 36 // PrefStore methods: |
35 virtual PrefReadError ReadPrefs(); | 37 virtual PrefReadError ReadPrefs(); |
36 virtual DictionaryValue* prefs() const { return prefs_.get(); } | 38 virtual DictionaryValue* prefs() const { return prefs_.get(); } |
37 | 39 |
38 // ConfigurationPolicyStore methods: | 40 // ConfigurationPolicyStore methods: |
39 virtual void Apply(ConfigurationPolicyType setting, Value* value); | 41 virtual void Apply(ConfigurationPolicyType setting, Value* value); |
40 | 42 |
41 // Creates a ConfigurationPolicyPrefStore that reads managed platform policy. | 43 // Creates a ConfigurationPolicyPrefStore that reads managed platform policy. |
42 static ConfigurationPolicyPrefStore* CreateManagedPlatformPolicyPrefStore(); | 44 static ConfigurationPolicyPrefStore* CreateManagedPlatformPolicyPrefStore(); |
43 | 45 |
44 // Creates a ConfigurationPolicyPrefStore that supplies policy from | 46 // Creates a ConfigurationPolicyPrefStore that supplies policy from |
45 // the device management server. | 47 // the device management server. |
46 static ConfigurationPolicyPrefStore* CreateDeviceManagementPolicyPrefStore(); | 48 static ConfigurationPolicyPrefStore* CreateDeviceManagementPolicyPrefStore( |
| 49 Profile* profile); |
47 | 50 |
48 // Creates a ConfigurationPolicyPrefStore that reads recommended policy. | 51 // Creates a ConfigurationPolicyPrefStore that reads recommended policy. |
49 static ConfigurationPolicyPrefStore* CreateRecommendedPolicyPrefStore(); | 52 static ConfigurationPolicyPrefStore* CreateRecommendedPolicyPrefStore(); |
50 | 53 |
51 // Returns the default policy definition list for Chrome. | 54 // Returns the default policy definition list for Chrome. |
52 static const ConfigurationPolicyProvider::PolicyDefinitionList* | 55 static const ConfigurationPolicyProvider::PolicyDefinitionList* |
53 GetChromePolicyDefinitionList(); | 56 GetChromePolicyDefinitionList(); |
54 | 57 |
55 // Returns the set of preference paths that can be affected by a proxy | 58 // Returns the set of preference paths that can be affected by a proxy |
56 // policy. | 59 // policy. |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
131 // unspecified map entries. Otherwise wipes all default search related | 134 // unspecified map entries. Otherwise wipes all default search related |
132 // map entries from |prefs_|. | 135 // map entries from |prefs_|. |
133 void FinalizeDefaultSearchPolicySettings(); | 136 void FinalizeDefaultSearchPolicySettings(); |
134 | 137 |
135 DISALLOW_COPY_AND_ASSIGN(ConfigurationPolicyPrefStore); | 138 DISALLOW_COPY_AND_ASSIGN(ConfigurationPolicyPrefStore); |
136 }; | 139 }; |
137 | 140 |
138 } // namespace policy | 141 } // namespace policy |
139 | 142 |
140 #endif // CHROME_BROWSER_POLICY_CONFIGURATION_POLICY_PREF_STORE_H_ | 143 #endif // CHROME_BROWSER_POLICY_CONFIGURATION_POLICY_PREF_STORE_H_ |
OLD | NEW |