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/chromeos/policy/user_cloud_policy_manager_chromeos.h" | 5 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_chromeos.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 "base/command_line.h" | |
9 #include "base/logging.h" | 10 #include "base/logging.h" |
10 #include "base/memory/ref_counted.h" | 11 #include "base/memory/ref_counted.h" |
11 #include "chrome/browser/browser_process.h" | 12 #include "chrome/browser/browser_process.h" |
12 #include "chrome/browser/chromeos/policy/policy_oauth2_token_fetcher.h" | 13 #include "chrome/browser/chromeos/policy/policy_oauth2_token_fetcher.h" |
13 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chrom eos.h" | 14 #include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chrom eos.h" |
14 #include "chrome/browser/chromeos/profiles/profile_helper.h" | 15 #include "chrome/browser/chromeos/profiles/profile_helper.h" |
16 #include "chrome/browser/invalidation/invalidation_service_factory.h" | |
15 #include "chrome/browser/policy/cloud/cloud_policy_refresh_scheduler.h" | 17 #include "chrome/browser/policy/cloud/cloud_policy_refresh_scheduler.h" |
16 #include "chrome/browser/policy/cloud/resource_cache.h" | 18 #include "chrome/browser/policy/cloud/resource_cache.h" |
17 #include "chrome/browser/policy/policy_bundle.h" | 19 #include "chrome/browser/policy/policy_bundle.h" |
18 #include "chrome/browser/policy/policy_domain_descriptor.h" | 20 #include "chrome/browser/policy/policy_domain_descriptor.h" |
21 #include "chrome/common/chrome_switches.h" | |
19 #include "chrome/common/pref_names.h" | 22 #include "chrome/common/pref_names.h" |
20 #include "net/url_request/url_request_context_getter.h" | 23 #include "net/url_request/url_request_context_getter.h" |
21 | 24 |
22 namespace em = enterprise_management; | 25 namespace em = enterprise_management; |
23 | 26 |
24 namespace policy { | 27 namespace policy { |
25 | 28 |
26 UserCloudPolicyManagerChromeOS::UserCloudPolicyManagerChromeOS( | 29 UserCloudPolicyManagerChromeOS::UserCloudPolicyManagerChromeOS( |
30 Profile* profile, | |
27 scoped_ptr<CloudPolicyStore> store, | 31 scoped_ptr<CloudPolicyStore> store, |
28 scoped_ptr<ResourceCache> resource_cache, | 32 scoped_ptr<ResourceCache> resource_cache, |
29 bool wait_for_policy_fetch) | 33 bool wait_for_policy_fetch) |
30 : CloudPolicyManager( | 34 : CloudPolicyManager( |
31 PolicyNamespaceKey(dm_protocol::kChromeUserPolicyType, std::string()), | 35 PolicyNamespaceKey(dm_protocol::kChromeUserPolicyType, std::string()), |
32 store.get()), | 36 store.get()), |
37 profile_(profile), | |
33 store_(store.Pass()), | 38 store_(store.Pass()), |
34 wait_for_policy_fetch_(wait_for_policy_fetch) { | 39 wait_for_policy_fetch_(wait_for_policy_fetch) { |
35 if (resource_cache) { | 40 if (resource_cache) { |
36 component_policy_service_.reset(new ComponentCloudPolicyService( | 41 component_policy_service_.reset(new ComponentCloudPolicyService( |
37 this, store_.get(), resource_cache.Pass())); | 42 this, store_.get(), resource_cache.Pass())); |
38 } | 43 } |
39 } | 44 } |
40 | 45 |
41 UserCloudPolicyManagerChromeOS::~UserCloudPolicyManagerChromeOS() {} | 46 UserCloudPolicyManagerChromeOS::~UserCloudPolicyManagerChromeOS() {} |
42 | 47 |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
266 if (component_policy_service_ && | 271 if (component_policy_service_ && |
267 !component_policy_service_->is_initialized()) { | 272 !component_policy_service_->is_initialized()) { |
268 // If the client doesn't have the list of components to fetch yet then don't | 273 // If the client doesn't have the list of components to fetch yet then don't |
269 // start the scheduler. The |component_policy_service_| will call back into | 274 // start the scheduler. The |component_policy_service_| will call back into |
270 // OnComponentCloudPolicyUpdated() once it's ready. | 275 // OnComponentCloudPolicyUpdated() once it's ready. |
271 return; | 276 return; |
272 } | 277 } |
273 | 278 |
274 core()->StartRefreshScheduler(); | 279 core()->StartRefreshScheduler(); |
275 core()->TrackRefreshDelayPref(local_state_, prefs::kUserPolicyRefreshRate); | 280 core()->TrackRefreshDelayPref(local_state_, prefs::kUserPolicyRefreshRate); |
281 | |
282 if (CommandLine::ForCurrentProcess()->HasSwitch( | |
Joao da Silva
2013/07/23 20:44:47
Check the command line flag on CreateInvalidator i
Steve Condie
2013/07/24 01:42:04
Done.
| |
283 switches::kEnableCloudPolicyPush)) { | |
284 CreateInvalidator( | |
285 invalidation::InvalidationServiceFactory::GetForProfile(profile_)); | |
286 } | |
276 } | 287 } |
277 | 288 |
278 } // namespace policy | 289 } // namespace policy |
OLD | NEW |