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

Side by Side Diff: chrome/browser/chromeos/policy/user_cloud_policy_store_chromeos.cc

Issue 14761012: Updated SessionManagerClient to use the multi-profile user policy calls. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 7 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 | Annotate | Revision Log
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/chromeos/policy/user_cloud_policy_store_chromeos.h" 5 #include "chrome/browser/chromeos/policy/user_cloud_policy_store_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/callback.h" 9 #include "base/callback.h"
10 #include "base/file_util.h" 10 #include "base/file_util.h"
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 new em::PolicyFetchResponse(policy)); 190 new em::PolicyFetchResponse(policy));
191 EnsurePolicyKeyLoaded( 191 EnsurePolicyKeyLoaded(
192 base::Bind(&UserCloudPolicyStoreChromeOS::ValidatePolicyForStore, 192 base::Bind(&UserCloudPolicyStoreChromeOS::ValidatePolicyForStore,
193 weak_factory_.GetWeakPtr(), 193 weak_factory_.GetWeakPtr(),
194 base::Passed(&response))); 194 base::Passed(&response)));
195 } 195 }
196 196
197 void UserCloudPolicyStoreChromeOS::Load() { 197 void UserCloudPolicyStoreChromeOS::Load() {
198 // Cancel all pending requests. 198 // Cancel all pending requests.
199 weak_factory_.InvalidateWeakPtrs(); 199 weak_factory_.InvalidateWeakPtrs();
200 session_manager_client_->RetrieveUserPolicy( 200 session_manager_client_->RetrievePolicyForUser(
201 username_,
201 base::Bind(&UserCloudPolicyStoreChromeOS::OnPolicyRetrieved, 202 base::Bind(&UserCloudPolicyStoreChromeOS::OnPolicyRetrieved,
202 weak_factory_.GetWeakPtr())); 203 weak_factory_.GetWeakPtr()));
203 } 204 }
204 205
205 void UserCloudPolicyStoreChromeOS::ValidatePolicyForStore( 206 void UserCloudPolicyStoreChromeOS::ValidatePolicyForStore(
206 scoped_ptr<em::PolicyFetchResponse> policy) { 207 scoped_ptr<em::PolicyFetchResponse> policy) {
207 // Create and configure a validator. 208 // Create and configure a validator.
208 scoped_ptr<UserCloudPolicyValidator> validator = 209 scoped_ptr<UserCloudPolicyValidator> validator =
209 CreateValidator(policy.Pass()); 210 CreateValidator(policy.Pass());
210 validator->ValidateUsername(username_); 211 validator->ValidateUsername(username_);
(...skipping 26 matching lines...) Expand all
237 return; 238 return;
238 } 239 }
239 240
240 std::string policy_blob; 241 std::string policy_blob;
241 if (!validator->policy()->SerializeToString(&policy_blob)) { 242 if (!validator->policy()->SerializeToString(&policy_blob)) {
242 status_ = STATUS_SERIALIZE_ERROR; 243 status_ = STATUS_SERIALIZE_ERROR;
243 NotifyStoreError(); 244 NotifyStoreError();
244 return; 245 return;
245 } 246 }
246 247
247 session_manager_client_->StoreUserPolicy( 248 session_manager_client_->StorePolicyForUser(
249 username_,
248 policy_blob, 250 policy_blob,
251 validator->policy()->new_public_key(),
249 base::Bind(&UserCloudPolicyStoreChromeOS::OnPolicyStored, 252 base::Bind(&UserCloudPolicyStoreChromeOS::OnPolicyStored,
250 weak_factory_.GetWeakPtr())); 253 weak_factory_.GetWeakPtr()));
251 } 254 }
252 255
253 void UserCloudPolicyStoreChromeOS::OnPolicyStored(bool success) { 256 void UserCloudPolicyStoreChromeOS::OnPolicyStored(bool success) {
254 if (!success) { 257 if (!success) {
255 status_ = STATUS_STORE_ERROR; 258 status_ = STATUS_STORE_ERROR;
256 NotifyStoreError(); 259 NotifyStoreError();
257 } else { 260 } else {
258 // Load the policy right after storing it, to make sure it was accepted by 261 // Load the policy right after storing it, to make sure it was accepted by
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
485 !sanitized_username.empty()) { 488 !sanitized_username.empty()) {
486 policy_key_path_ = user_policy_key_dir_.Append( 489 policy_key_path_ = user_policy_key_dir_.Append(
487 base::StringPrintf(kPolicyKeyFile, sanitized_username.c_str())); 490 base::StringPrintf(kPolicyKeyFile, sanitized_username.c_str()));
488 } else { 491 } else {
489 SampleValidationFailure(VALIDATION_FAILURE_DBUS); 492 SampleValidationFailure(VALIDATION_FAILURE_DBUS);
490 } 493 }
491 ReloadPolicyKey(callback); 494 ReloadPolicyKey(callback);
492 } 495 }
493 496
494 } // namespace policy 497 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698