diff options
Diffstat (limited to 'payload_state.cc')
-rw-r--r-- | payload_state.cc | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/payload_state.cc b/payload_state.cc index b58f9a89..fcd4dab0 100644 --- a/payload_state.cc +++ b/payload_state.cc @@ -906,6 +906,7 @@ void PayloadState::ResetPersistedState() { ResetRollbackVersion(); SetP2PNumAttempts(0); SetP2PFirstAttemptTimestamp(Time()); // Set to null time + SetScatteringWaitPeriod(base::TimeDelta()); } void PayloadState::ResetRollbackVersion() { @@ -1025,6 +1026,24 @@ void PayloadState::SetUrlIndex(uint32_t url_index) { UpdateCurrentDownloadSource(); } +void PayloadState::LoadScatteringWaitPeriod() { + SetScatteringWaitPeriod( + TimeDelta::FromSeconds(GetPersistedValue(kPrefsWallClockWaitPeriod))); +} + +void PayloadState::SetScatteringWaitPeriod(base::TimeDelta wait_period) { + CHECK(prefs_); + scattering_wait_period_ = wait_period; + LOG(INFO) << "Scattering Wait Period (seconds) = " + << scattering_wait_period_.InSeconds(); + if (scattering_wait_period_.InSeconds() > 0) { + prefs_->SetInt64(kPrefsWallClockWaitPeriod, + scattering_wait_period_.InSeconds()); + } else { + prefs_->Delete(kPrefsWallClockWaitPeriod); + } +} + void PayloadState::LoadUrlSwitchCount() { SetUrlSwitchCount(GetPersistedValue(kPrefsUrlSwitchCount)); } |