Chromium Code Reviews| Index: chrome/browser/chromeos/arc/policy/arc_android_management_checker.cc |
| diff --git a/chrome/browser/chromeos/arc/policy/arc_android_management_checker.cc b/chrome/browser/chromeos/arc/policy/arc_android_management_checker.cc |
| index 1d50dc68d67bad37b488b9e1eaed8d2c50a3d6c6..35cd0866a36a8d5d9c74c8b1c3a07b2acb480366 100644 |
| --- a/chrome/browser/chromeos/arc/policy/arc_android_management_checker.cc |
| +++ b/chrome/browser/chromeos/arc/policy/arc_android_management_checker.cc |
| @@ -4,6 +4,8 @@ |
| #include "chrome/browser/chromeos/arc/policy/arc_android_management_checker.h" |
| +#include <utility> |
|
Luis Héctor Chávez
2016/10/25 15:29:39
hmmm is this for std::min? shouldn't it be algorit
hidehiko
2016/10/25 17:02:48
Oops, you're right. It's algorithm. Fixed.
|
| + |
| #include "base/bind.h" |
| #include "base/threading/thread_task_runner_handle.h" |
| #include "chrome/browser/browser_process.h" |
| @@ -17,8 +19,8 @@ namespace arc { |
| namespace { |
| -constexpr int kRetryTimeMinMs = 10 * 1000; // 10 sec. |
| -constexpr int kRetryTimeMaxMs = 1 * 60 * 60 * 1000; // 1 hour. |
| +constexpr base::TimeDelta kRetryDelayMin = base::TimeDelta::FromSeconds(10); |
| +constexpr base::TimeDelta kRetryDelayMax = base::TimeDelta::FromHours(1); |
| policy::DeviceManagementService* GetDeviceManagementService() { |
| policy::BrowserPolicyConnectorChromeOS* const connector = |
| @@ -37,7 +39,7 @@ ArcAndroidManagementChecker::ArcAndroidManagementChecker( |
| token_service_(token_service), |
| account_id_(account_id), |
| background_mode_(background_mode), |
| - retry_time_ms_(kRetryTimeMinMs), |
| + retry_delay_(kRetryDelayMin), |
| android_management_client_(GetDeviceManagementService(), |
| g_browser_process->system_request_context(), |
| account_id, |
| @@ -88,17 +90,13 @@ void ArcAndroidManagementChecker::StartCheck() { |
| void ArcAndroidManagementChecker::ScheduleCheck() { |
| DCHECK(background_mode_); |
| - |
| - VLOG(2) << "Schedule next android management check in " << retry_time_ms_ |
| - << " ms."; |
| + VLOG(2) << "Schedule next android management check in " << retry_delay_; |
|
Luis Héctor Chávez
2016/10/25 15:29:39
nit: remove extra space in this line (between mana
hidehiko
2016/10/25 17:02:48
Done.
|
| base::ThreadTaskRunnerHandle::Get()->PostDelayedTask( |
| FROM_HERE, base::Bind(&ArcAndroidManagementChecker::StartCheck, |
| weak_ptr_factory_.GetWeakPtr()), |
| - base::TimeDelta::FromMilliseconds(retry_time_ms_)); |
| - retry_time_ms_ *= 2; |
| - if (retry_time_ms_ > kRetryTimeMaxMs) |
| - retry_time_ms_ = kRetryTimeMaxMs; |
| + retry_delay_); |
| + retry_delay_ = std::min(retry_delay_ * 2, kRetryDelayMax); |
| } |
| void ArcAndroidManagementChecker::DispatchResult( |