OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/supervised_user/supervised_user_service.h" | 5 #include "chrome/browser/supervised_user/supervised_user_service.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/feature_list.h" | 10 #include "base/feature_list.h" |
11 #include "base/files/file_path.h" | 11 #include "base/files/file_path.h" |
12 #include "base/files/file_util.h" | 12 #include "base/files/file_util.h" |
| 13 #include "base/memory/ptr_util.h" |
13 #include "base/memory/ref_counted.h" | 14 #include "base/memory/ref_counted.h" |
14 #include "base/path_service.h" | 15 #include "base/path_service.h" |
15 #include "base/strings/stringprintf.h" | 16 #include "base/strings/stringprintf.h" |
16 #include "base/strings/utf_string_conversions.h" | 17 #include "base/strings/utf_string_conversions.h" |
17 #include "base/task_runner_util.h" | 18 #include "base/task_runner_util.h" |
18 #include "base/threading/sequenced_worker_pool.h" | 19 #include "base/threading/sequenced_worker_pool.h" |
19 #include "base/version.h" | 20 #include "base/version.h" |
20 #include "build/build_config.h" | 21 #include "build/build_config.h" |
21 #include "chrome/browser/browser_process.h" | 22 #include "chrome/browser/browser_process.h" |
22 #include "chrome/browser/component_updater/supervised_user_whitelist_installer.h
" | 23 #include "chrome/browser/component_updater/supervised_user_whitelist_installer.h
" |
(...skipping 385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
408 observer_list_.AddObserver(observer); | 409 observer_list_.AddObserver(observer); |
409 } | 410 } |
410 | 411 |
411 void SupervisedUserService::RemoveObserver( | 412 void SupervisedUserService::RemoveObserver( |
412 SupervisedUserServiceObserver* observer) { | 413 SupervisedUserServiceObserver* observer) { |
413 observer_list_.RemoveObserver(observer); | 414 observer_list_.RemoveObserver(observer); |
414 } | 415 } |
415 | 416 |
416 void SupervisedUserService::AddPermissionRequestCreator( | 417 void SupervisedUserService::AddPermissionRequestCreator( |
417 std::unique_ptr<PermissionRequestCreator> creator) { | 418 std::unique_ptr<PermissionRequestCreator> creator) { |
418 permissions_creators_.push_back(creator.release()); | 419 permissions_creators_.push_back(std::move(creator)); |
419 } | 420 } |
420 | 421 |
421 void SupervisedUserService::SetSafeSearchURLReporter( | 422 void SupervisedUserService::SetSafeSearchURLReporter( |
422 std::unique_ptr<SafeSearchURLReporter> reporter) { | 423 std::unique_ptr<SafeSearchURLReporter> reporter) { |
423 url_reporter_ = std::move(reporter); | 424 url_reporter_ = std::move(reporter); |
424 } | 425 } |
425 | 426 |
426 bool SupervisedUserService::IncludesSyncSessionsType() const { | 427 bool SupervisedUserService::IncludesSyncSessionsType() const { |
427 return includes_sync_sessions_type_; | 428 return includes_sync_sessions_type_; |
428 } | 429 } |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
562 InitSync( | 563 InitSync( |
563 command_line->GetSwitchValueASCII( | 564 command_line->GetSwitchValueASCII( |
564 switches::kSupervisedUserSyncToken)); | 565 switches::kSupervisedUserSyncToken)); |
565 } | 566 } |
566 | 567 |
567 ProfileOAuth2TokenService* token_service = | 568 ProfileOAuth2TokenService* token_service = |
568 ProfileOAuth2TokenServiceFactory::GetForProfile(profile_); | 569 ProfileOAuth2TokenServiceFactory::GetForProfile(profile_); |
569 token_service->LoadCredentials( | 570 token_service->LoadCredentials( |
570 supervised_users::kSupervisedUserPseudoEmail); | 571 supervised_users::kSupervisedUserPseudoEmail); |
571 | 572 |
572 permissions_creators_.push_back(new PermissionRequestCreatorSync( | 573 permissions_creators_.push_back( |
573 GetSettingsService(), | 574 base::MakeUnique<PermissionRequestCreatorSync>( |
574 SupervisedUserSharedSettingsServiceFactory::GetForBrowserContext( | 575 GetSettingsService(), |
575 profile_), | 576 SupervisedUserSharedSettingsServiceFactory::GetForBrowserContext( |
576 ProfileSyncServiceFactory::GetForProfile(profile_), | 577 profile_), |
577 GetSupervisedUserName(), | 578 ProfileSyncServiceFactory::GetForProfile(profile_), |
578 profile_->GetPrefs()->GetString(prefs::kSupervisedUserId))); | 579 GetSupervisedUserName(), |
| 580 profile_->GetPrefs()->GetString(prefs::kSupervisedUserId))); |
579 | 581 |
580 SetupSync(); | 582 SetupSync(); |
581 #else | 583 #else |
582 NOTREACHED(); | 584 NOTREACHED(); |
583 #endif | 585 #endif |
584 } | 586 } |
585 } | 587 } |
586 | 588 |
587 // Now activate/deactivate anything not handled by the delegate yet. | 589 // Now activate/deactivate anything not handled by the delegate yet. |
588 | 590 |
(...skipping 190 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
779 const SuccessCallback& callback, | 781 const SuccessCallback& callback, |
780 size_t index) { | 782 size_t index) { |
781 // Find a permission request creator that is enabled. | 783 // Find a permission request creator that is enabled. |
782 size_t next_index = FindEnabledPermissionRequestCreator(index); | 784 size_t next_index = FindEnabledPermissionRequestCreator(index); |
783 if (next_index >= permissions_creators_.size()) { | 785 if (next_index >= permissions_creators_.size()) { |
784 callback.Run(false); | 786 callback.Run(false); |
785 return; | 787 return; |
786 } | 788 } |
787 | 789 |
788 create_request.Run( | 790 create_request.Run( |
789 permissions_creators_[next_index], | 791 permissions_creators_[next_index].get(), |
790 base::Bind(&SupervisedUserService::OnPermissionRequestIssued, | 792 base::Bind(&SupervisedUserService::OnPermissionRequestIssued, |
791 weak_ptr_factory_.GetWeakPtr(), create_request, | 793 weak_ptr_factory_.GetWeakPtr(), create_request, callback, |
792 callback, next_index)); | 794 next_index)); |
793 } | 795 } |
794 | 796 |
795 void SupervisedUserService::OnPermissionRequestIssued( | 797 void SupervisedUserService::OnPermissionRequestIssued( |
796 const CreatePermissionRequestCallback& create_request, | 798 const CreatePermissionRequestCallback& create_request, |
797 const SuccessCallback& callback, | 799 const SuccessCallback& callback, |
798 size_t index, | 800 size_t index, |
799 bool success) { | 801 bool success) { |
800 if (success) { | 802 if (success) { |
801 callback.Run(true); | 803 callback.Run(true); |
802 return; | 804 return; |
(...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1310 content::RecordAction(UserMetricsAction("ManagedUsers_SwitchProfile")); | 1312 content::RecordAction(UserMetricsAction("ManagedUsers_SwitchProfile")); |
1311 | 1313 |
1312 is_profile_active_ = profile_became_active; | 1314 is_profile_active_ = profile_became_active; |
1313 } | 1315 } |
1314 #endif // !defined(OS_ANDROID) | 1316 #endif // !defined(OS_ANDROID) |
1315 | 1317 |
1316 void SupervisedUserService::OnSiteListUpdated() { | 1318 void SupervisedUserService::OnSiteListUpdated() { |
1317 for (SupervisedUserServiceObserver& observer : observer_list_) | 1319 for (SupervisedUserServiceObserver& observer : observer_list_) |
1318 observer.OnURLFilterChanged(); | 1320 observer.OnURLFilterChanged(); |
1319 } | 1321 } |
OLD | NEW |