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 #include "chrome/browser/policy/cloud/user_cloud_policy_manager.h" | 5 #include "chrome/browser/policy/cloud/user_cloud_policy_manager.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "chrome/browser/invalidation/invalidation_service_factory.h" | |
9 #include "chrome/browser/policy/cloud/cloud_policy_constants.h" | 10 #include "chrome/browser/policy/cloud/cloud_policy_constants.h" |
10 #include "chrome/browser/policy/cloud/cloud_policy_service.h" | 11 #include "chrome/browser/policy/cloud/cloud_policy_service.h" |
11 #include "chrome/browser/policy/cloud/user_cloud_policy_manager_factory.h" | 12 #include "chrome/browser/policy/cloud/user_cloud_policy_manager_factory.h" |
12 #include "chrome/browser/policy/cloud/user_cloud_policy_store.h" | 13 #include "chrome/browser/policy/cloud/user_cloud_policy_store.h" |
13 #include "chrome/browser/policy/policy_types.h" | 14 #include "chrome/browser/policy/policy_types.h" |
14 #include "chrome/common/pref_names.h" | 15 #include "chrome/common/pref_names.h" |
15 | 16 |
16 namespace em = enterprise_management; | 17 namespace em = enterprise_management; |
17 | 18 |
18 namespace policy { | 19 namespace policy { |
(...skipping 11 matching lines...) Expand all Loading... | |
30 | 31 |
31 UserCloudPolicyManager::~UserCloudPolicyManager() { | 32 UserCloudPolicyManager::~UserCloudPolicyManager() { |
32 UserCloudPolicyManagerFactory::GetInstance()->Unregister(profile_, this); | 33 UserCloudPolicyManagerFactory::GetInstance()->Unregister(profile_, this); |
33 } | 34 } |
34 | 35 |
35 void UserCloudPolicyManager::Connect( | 36 void UserCloudPolicyManager::Connect( |
36 PrefService* local_state, scoped_ptr<CloudPolicyClient> client) { | 37 PrefService* local_state, scoped_ptr<CloudPolicyClient> client) { |
37 core()->Connect(client.Pass()); | 38 core()->Connect(client.Pass()); |
38 core()->StartRefreshScheduler(); | 39 core()->StartRefreshScheduler(); |
39 core()->TrackRefreshDelayPref(local_state, prefs::kUserPolicyRefreshRate); | 40 core()->TrackRefreshDelayPref(local_state, prefs::kUserPolicyRefreshRate); |
41 CreateInvalidator( | |
42 invalidation::InvalidationServiceFactory::GetForProfile(profile_)); | |
40 } | 43 } |
41 | 44 |
42 // static | 45 // static |
43 scoped_ptr<CloudPolicyClient> | 46 scoped_ptr<CloudPolicyClient> |
44 UserCloudPolicyManager::CreateCloudPolicyClient( | 47 UserCloudPolicyManager::CreateCloudPolicyClient( |
45 DeviceManagementService* device_management_service) { | 48 DeviceManagementService* device_management_service) { |
46 return make_scoped_ptr( | 49 return make_scoped_ptr( |
47 new CloudPolicyClient(std::string(), std::string(), | 50 new CloudPolicyClient(std::string(), std::string(), |
48 USER_AFFILIATION_NONE, | 51 USER_AFFILIATION_NONE, |
49 NULL, device_management_service)).Pass(); | 52 NULL, device_management_service)).Pass(); |
50 } | 53 } |
51 | 54 |
52 void UserCloudPolicyManager::DisconnectAndRemovePolicy() { | 55 void UserCloudPolicyManager::DisconnectAndRemovePolicy() { |
56 UnregisterInvalidator(); | |
Joao da Silva
2013/07/24 15:34:07
This call is not really needed, because store_->Cl
Steve Condie
2013/07/25 01:18:08
True, although this would subtlely violate the con
| |
53 core()->Disconnect(); | 57 core()->Disconnect(); |
54 store_->Clear(); | 58 store_->Clear(); |
55 } | 59 } |
56 | 60 |
57 bool UserCloudPolicyManager::IsClientRegistered() const { | 61 bool UserCloudPolicyManager::IsClientRegistered() const { |
58 return client() && client()->is_registered(); | 62 return client() && client()->is_registered(); |
59 } | 63 } |
60 | 64 |
61 } // namespace policy | 65 } // namespace policy |
OLD | NEW |