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

Side by Side Diff: chrome/browser/policy/cloud/user_cloud_policy_manager.cc

Issue 19733003: Implement cloud policy invalidations using the invalidation service framework. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 7 years, 5 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
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 #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
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
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698