Commit 3dbea98e authored by Anastasiia N's avatar Anastasiia N Committed by Commit Bot

Use async HasDummyGaiaToken in account_manager_migrator

Bug: 1135980
Change-Id: I8bc65fcbc91216668fd2f711cd17beb60f63cdba
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2454170
Commit-Queue: Anastasiia N <anastasiian@chromium.org>
Reviewed-by: default avatarKush Sinha <sinhak@chromium.org>
Cr-Commit-Position: refs/heads/master@{#817017}
parent 6f73fcda
...@@ -97,10 +97,9 @@ class AccountMigrationBaseStep : public AccountMigrationRunner::Step { ...@@ -97,10 +97,9 @@ class AccountMigrationBaseStep : public AccountMigrationRunner::Step {
~AccountMigrationBaseStep() override = default; ~AccountMigrationBaseStep() override = default;
protected: protected:
bool IsAccountWithNonDummyTokenPresentInAccountManager( bool IsAccountPresentInAccountManager(
const AccountManager::AccountKey& account) const { const AccountManager::AccountKey& account) const {
return base::Contains(account_manager_accounts_, account) && return base::Contains(account_manager_accounts_, account);
!account_manager_->HasDummyGaiaTokenSync(account);
} }
bool IsAccountManagerEmpty() const { bool IsAccountManagerEmpty() const {
...@@ -186,11 +185,27 @@ class DeviceAccountMigration : public AccountMigrationBaseStep, ...@@ -186,11 +185,27 @@ class DeviceAccountMigration : public AccountMigrationBaseStep,
private: private:
void StartMigration() override { void StartMigration() override {
if (IsAccountWithNonDummyTokenPresentInAccountManager(device_account_)) { if (!IsAccountPresentInAccountManager(device_account_)) {
MigrateDeviceAccount();
return;
}
account_manager()->HasDummyGaiaToken(
device_account_,
base::BindOnce(&DeviceAccountMigration::OnHasDummyGaiaToken,
weak_factory_.GetWeakPtr()));
}
void OnHasDummyGaiaToken(bool has_dummy_token) {
if (!has_dummy_token) {
FinishWithSuccess(); FinishWithSuccess();
return; return;
} }
MigrateDeviceAccount();
}
void MigrateDeviceAccount() {
switch (device_account_.account_type) { switch (device_account_.account_type) {
case account_manager::AccountType::ACCOUNT_TYPE_ACTIVE_DIRECTORY: case account_manager::AccountType::ACCOUNT_TYPE_ACTIVE_DIRECTORY:
MigrateActiveDirectoryAccount(); MigrateActiveDirectoryAccount();
...@@ -271,6 +286,8 @@ class DeviceAccountMigration : public AccountMigrationBaseStep, ...@@ -271,6 +286,8 @@ class DeviceAccountMigration : public AccountMigrationBaseStep,
SEQUENCE_CHECKER(sequence_checker_); SEQUENCE_CHECKER(sequence_checker_);
base::WeakPtrFactory<DeviceAccountMigration> weak_factory_{this};
DISALLOW_COPY_AND_ASSIGN(DeviceAccountMigration); DISALLOW_COPY_AND_ASSIGN(DeviceAccountMigration);
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment