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

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

Issue 2910013003: Replace deprecated base::NonThreadSafe in chrome/browser/chromeos/policy in favor of SequenceChecke… (Closed)
Patch Set: Created 3 years, 6 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
« no previous file with comments | « chrome/browser/chromeos/policy/cloud_external_data_manager_base.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #include "chrome/browser/chromeos/policy/cloud_external_data_manager_base.h" 5 #include "chrome/browser/chromeos/policy/cloud_external_data_manager_base.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <map> 10 #include <map>
(...skipping 335 matching lines...) Expand 10 before | Expand all | Expand 10 after
346 scoped_refptr<base::SequencedTaskRunner> backend_task_runner, 346 scoped_refptr<base::SequencedTaskRunner> backend_task_runner,
347 scoped_refptr<base::SequencedTaskRunner> io_task_runner) 347 scoped_refptr<base::SequencedTaskRunner> io_task_runner)
348 : backend_task_runner_(backend_task_runner), 348 : backend_task_runner_(backend_task_runner),
349 io_task_runner_(io_task_runner), 349 io_task_runner_(io_task_runner),
350 backend_(new Backend(get_policy_details, 350 backend_(new Backend(get_policy_details,
351 backend_task_runner_, 351 backend_task_runner_,
352 base::ThreadTaskRunnerHandle::Get())) { 352 base::ThreadTaskRunnerHandle::Get())) {
353 } 353 }
354 354
355 CloudExternalDataManagerBase::~CloudExternalDataManagerBase() { 355 CloudExternalDataManagerBase::~CloudExternalDataManagerBase() {
356 DCHECK(CalledOnValidThread()); 356 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
357 io_task_runner_->DeleteSoon(FROM_HERE, 357 io_task_runner_->DeleteSoon(FROM_HERE,
358 external_policy_data_fetcher_backend_.release()); 358 external_policy_data_fetcher_backend_.release());
359 backend_task_runner_->DeleteSoon(FROM_HERE, backend_.release()); 359 backend_task_runner_->DeleteSoon(FROM_HERE, backend_.release());
360 } 360 }
361 361
362 void CloudExternalDataManagerBase::SetExternalDataStore( 362 void CloudExternalDataManagerBase::SetExternalDataStore(
363 std::unique_ptr<CloudExternalDataStore> external_data_store) { 363 std::unique_ptr<CloudExternalDataStore> external_data_store) {
364 DCHECK(CalledOnValidThread()); 364 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
365 backend_task_runner_->PostTask(FROM_HERE, base::Bind( 365 backend_task_runner_->PostTask(FROM_HERE, base::Bind(
366 &Backend::SetExternalDataStore, 366 &Backend::SetExternalDataStore,
367 base::Unretained(backend_.get()), 367 base::Unretained(backend_.get()),
368 base::Passed(&external_data_store))); 368 base::Passed(&external_data_store)));
369 } 369 }
370 370
371 void CloudExternalDataManagerBase::SetPolicyStore( 371 void CloudExternalDataManagerBase::SetPolicyStore(
372 CloudPolicyStore* policy_store) { 372 CloudPolicyStore* policy_store) {
373 DCHECK(CalledOnValidThread()); 373 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
374 CloudExternalDataManager::SetPolicyStore(policy_store); 374 CloudExternalDataManager::SetPolicyStore(policy_store);
375 if (policy_store_ && policy_store_->is_initialized()) 375 if (policy_store_ && policy_store_->is_initialized())
376 OnPolicyStoreLoaded(); 376 OnPolicyStoreLoaded();
377 } 377 }
378 378
379 void CloudExternalDataManagerBase::OnPolicyStoreLoaded() { 379 void CloudExternalDataManagerBase::OnPolicyStoreLoaded() {
380 // Collect all external data references made by policies in |policy_store_| 380 // Collect all external data references made by policies in |policy_store_|
381 // and pass them to the |backend_|. 381 // and pass them to the |backend_|.
382 DCHECK(CalledOnValidThread()); 382 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
383 std::unique_ptr<Metadata> metadata(new Metadata); 383 std::unique_ptr<Metadata> metadata(new Metadata);
384 const PolicyMap& policy_map = policy_store_->policy_map(); 384 const PolicyMap& policy_map = policy_store_->policy_map();
385 for (PolicyMap::const_iterator it = policy_map.begin(); 385 for (PolicyMap::const_iterator it = policy_map.begin();
386 it != policy_map.end(); ++it) { 386 it != policy_map.end(); ++it) {
387 if (!it->second.external_data_fetcher) { 387 if (!it->second.external_data_fetcher) {
388 // Skip policies that do not reference external data. 388 // Skip policies that do not reference external data.
389 continue; 389 continue;
390 } 390 }
391 const base::DictionaryValue* dict = NULL; 391 const base::DictionaryValue* dict = NULL;
392 std::string url; 392 std::string url;
(...skipping 12 matching lines...) Expand all
405 } 405 }
406 406
407 backend_task_runner_->PostTask(FROM_HERE, base::Bind( 407 backend_task_runner_->PostTask(FROM_HERE, base::Bind(
408 &Backend::OnMetadataUpdated, 408 &Backend::OnMetadataUpdated,
409 base::Unretained(backend_.get()), 409 base::Unretained(backend_.get()),
410 base::Passed(&metadata))); 410 base::Passed(&metadata)));
411 } 411 }
412 412
413 void CloudExternalDataManagerBase::Connect( 413 void CloudExternalDataManagerBase::Connect(
414 scoped_refptr<net::URLRequestContextGetter> request_context) { 414 scoped_refptr<net::URLRequestContextGetter> request_context) {
415 DCHECK(CalledOnValidThread()); 415 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
416 DCHECK(!external_policy_data_fetcher_backend_); 416 DCHECK(!external_policy_data_fetcher_backend_);
417 external_policy_data_fetcher_backend_.reset( 417 external_policy_data_fetcher_backend_.reset(
418 new ExternalPolicyDataFetcherBackend(io_task_runner_, 418 new ExternalPolicyDataFetcherBackend(io_task_runner_,
419 request_context)); 419 request_context));
420 backend_task_runner_->PostTask(FROM_HERE, base::Bind( 420 backend_task_runner_->PostTask(FROM_HERE, base::Bind(
421 &Backend::Connect, 421 &Backend::Connect,
422 base::Unretained(backend_.get()), 422 base::Unretained(backend_.get()),
423 base::Passed(external_policy_data_fetcher_backend_->CreateFrontend( 423 base::Passed(external_policy_data_fetcher_backend_->CreateFrontend(
424 backend_task_runner_)))); 424 backend_task_runner_))));
425 } 425 }
426 426
427 void CloudExternalDataManagerBase::Disconnect() { 427 void CloudExternalDataManagerBase::Disconnect() {
428 DCHECK(CalledOnValidThread()); 428 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
429 io_task_runner_->DeleteSoon(FROM_HERE, 429 io_task_runner_->DeleteSoon(FROM_HERE,
430 external_policy_data_fetcher_backend_.release()); 430 external_policy_data_fetcher_backend_.release());
431 backend_task_runner_->PostTask(FROM_HERE, base::Bind( 431 backend_task_runner_->PostTask(FROM_HERE, base::Bind(
432 &Backend::Disconnect, base::Unretained(backend_.get()))); 432 &Backend::Disconnect, base::Unretained(backend_.get())));
433 } 433 }
434 434
435 void CloudExternalDataManagerBase::Fetch( 435 void CloudExternalDataManagerBase::Fetch(
436 const std::string& policy, 436 const std::string& policy,
437 const ExternalDataFetcher::FetchCallback& callback) { 437 const ExternalDataFetcher::FetchCallback& callback) {
438 DCHECK(CalledOnValidThread()); 438 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
439 backend_task_runner_->PostTask(FROM_HERE, base::Bind( 439 backend_task_runner_->PostTask(FROM_HERE, base::Bind(
440 &Backend::Fetch, base::Unretained(backend_.get()), policy, callback)); 440 &Backend::Fetch, base::Unretained(backend_.get()), policy, callback));
441 } 441 }
442 442
443 // static 443 // static
444 void CloudExternalDataManagerBase::SetMaxExternalDataSizeForTesting( 444 void CloudExternalDataManagerBase::SetMaxExternalDataSizeForTesting(
445 int max_size) { 445 int max_size) {
446 g_max_external_data_size_for_testing = max_size; 446 g_max_external_data_size_for_testing = max_size;
447 } 447 }
448 448
449 void CloudExternalDataManagerBase::FetchAll() { 449 void CloudExternalDataManagerBase::FetchAll() {
450 DCHECK(CalledOnValidThread()); 450 DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_);
451 backend_task_runner_->PostTask(FROM_HERE, base::Bind( 451 backend_task_runner_->PostTask(FROM_HERE, base::Bind(
452 &Backend::FetchAll, base::Unretained(backend_.get()))); 452 &Backend::FetchAll, base::Unretained(backend_.get())));
453 } 453 }
454 454
455 } // namespace policy 455 } // namespace policy
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/policy/cloud_external_data_manager_base.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698