OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_CHROMEOS_POLICY_LOGIN_PROFILE_POLICY_PROVIDER_H_ | 5 #ifndef CHROME_BROWSER_CHROMEOS_POLICY_LOGIN_PROFILE_POLICY_PROVIDER_H_ |
6 #define CHROME_BROWSER_CHROMEOS_POLICY_LOGIN_PROFILE_POLICY_PROVIDER_H_ | 6 #define CHROME_BROWSER_CHROMEOS_POLICY_LOGIN_PROFILE_POLICY_PROVIDER_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "base/memory/weak_ptr.h" | 10 #include "base/memory/weak_ptr.h" |
11 #include "components/policy/core/common/configuration_policy_provider.h" | 11 #include "components/policy/core/common/configuration_policy_provider.h" |
12 #include "components/policy/core/common/policy_service.h" | 12 #include "components/policy/core/common/policy_service.h" |
13 | 13 |
14 namespace policy { | 14 namespace policy { |
15 | 15 |
16 // Policy provider for the login profile. Since the login profile is not | 16 // Policy provider for the login profile. Since the login profile is not |
17 // associated with any user, it does not receive regular user policy. However, | 17 // associated with any user, it does not receive regular user policy. However, |
18 // several device policies that control features on the login screen surface as | 18 // several device policies that control features on the login screen surface as |
19 // user policies in the login profile. | 19 // user policies in the login profile. |
20 class LoginProfilePolicyProvider : public ConfigurationPolicyProvider, | 20 class LoginProfilePolicyProvider : public ConfigurationPolicyProvider, |
21 public PolicyService::Observer { | 21 public PolicyService::Observer { |
22 public: | 22 public: |
23 explicit LoginProfilePolicyProvider(PolicyService* device_policy_service); | 23 explicit LoginProfilePolicyProvider(PolicyService* device_policy_service); |
24 ~LoginProfilePolicyProvider() override; | 24 ~LoginProfilePolicyProvider() override; |
25 | 25 |
26 // ConfigurationPolicyProvider: | 26 // ConfigurationPolicyProvider: |
27 void Init(SchemaRegistry* registry) override; | 27 void Init(SchemaRegistry* registry) override; |
28 void Shutdown() override; | 28 void Shutdown() override; |
29 void RefreshPolicies() override; | 29 void RefreshPolicies() override; |
30 PolicySource source() const override; | |
Thiemo Nagel
2015/09/01 17:40:36
Remove.
fhorschig
2015/09/04 06:53:53
Done.
| |
30 | 31 |
31 // PolicyService::Observer: | 32 // PolicyService::Observer: |
32 void OnPolicyUpdated(const PolicyNamespace& ns, | 33 void OnPolicyUpdated(const PolicyNamespace& ns, |
33 const PolicyMap& previous, | 34 const PolicyMap& previous, |
34 const PolicyMap& current) override; | 35 const PolicyMap& current) override; |
35 void OnPolicyServiceInitialized(PolicyDomain domain) override; | 36 void OnPolicyServiceInitialized(PolicyDomain domain) override; |
36 | 37 |
37 void OnDevicePolicyRefreshDone(); | 38 void OnDevicePolicyRefreshDone(); |
38 | 39 |
39 private: | 40 private: |
40 void UpdateFromDevicePolicy(); | 41 void UpdateFromDevicePolicy(); |
41 | 42 |
42 PolicyService* device_policy_service_; // Not owned. | 43 PolicyService* device_policy_service_; // Not owned. |
43 | 44 |
44 bool waiting_for_device_policy_refresh_; | 45 bool waiting_for_device_policy_refresh_; |
45 | 46 |
46 base::WeakPtrFactory<LoginProfilePolicyProvider> weak_factory_; | 47 base::WeakPtrFactory<LoginProfilePolicyProvider> weak_factory_; |
47 | 48 |
48 DISALLOW_COPY_AND_ASSIGN(LoginProfilePolicyProvider); | 49 DISALLOW_COPY_AND_ASSIGN(LoginProfilePolicyProvider); |
49 }; | 50 }; |
50 | 51 |
51 } // namespace policy | 52 } // namespace policy |
52 | 53 |
53 #endif // CHROME_BROWSER_CHROMEOS_POLICY_LOGIN_PROFILE_POLICY_PROVIDER_H_ | 54 #endif // CHROME_BROWSER_CHROMEOS_POLICY_LOGIN_PROFILE_POLICY_PROVIDER_H_ |
OLD | NEW |