| 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 "components/gcm_driver/gcm_channel_status_syncer.h" | 5 #include "components/gcm_driver/gcm_channel_status_syncer.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/location.h" | 9 #include "base/location.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 101 custom_poll_interval_use_count_(0), | 101 custom_poll_interval_use_count_(0), |
| 102 delay_removed_for_testing_(false), | 102 delay_removed_for_testing_(false), |
| 103 weak_ptr_factory_(this) { | 103 weak_ptr_factory_(this) { |
| 104 gcm_enabled_ = prefs_->GetBoolean(kGCMChannelStatus); | 104 gcm_enabled_ = prefs_->GetBoolean(kGCMChannelStatus); |
| 105 poll_interval_seconds_ = prefs_->GetInteger(kGCMChannelPollIntervalSeconds); | 105 poll_interval_seconds_ = prefs_->GetInteger(kGCMChannelPollIntervalSeconds); |
| 106 if (poll_interval_seconds_ < | 106 if (poll_interval_seconds_ < |
| 107 GCMChannelStatusRequest::min_poll_interval_seconds()) { | 107 GCMChannelStatusRequest::min_poll_interval_seconds()) { |
| 108 poll_interval_seconds_ = | 108 poll_interval_seconds_ = |
| 109 GCMChannelStatusRequest::min_poll_interval_seconds(); | 109 GCMChannelStatusRequest::min_poll_interval_seconds(); |
| 110 } | 110 } |
| 111 if (CommandLine::ForCurrentProcess()->HasSwitch( | 111 const base::CommandLine& command_line = |
| 112 switches::kCustomPollIntervalMinutes)) { | 112 *base::CommandLine::ForCurrentProcess(); |
| 113 std::string value(CommandLine::ForCurrentProcess()->GetSwitchValueASCII( | 113 if (command_line.HasSwitch(switches::kCustomPollIntervalMinutes)) { |
| 114 std::string value(command_line.GetSwitchValueASCII( |
| 114 switches::kCustomPollIntervalMinutes)); | 115 switches::kCustomPollIntervalMinutes)); |
| 115 int minutes = 0; | 116 int minutes = 0; |
| 116 if (base::StringToInt(value, &minutes)) { | 117 if (base::StringToInt(value, &minutes)) { |
| 117 DCHECK_GE(minutes, kMinCustomPollIntervalMinutes); | 118 DCHECK_GE(minutes, kMinCustomPollIntervalMinutes); |
| 118 if (minutes >= kMinCustomPollIntervalMinutes) { | 119 if (minutes >= kMinCustomPollIntervalMinutes) { |
| 119 poll_interval_seconds_ = minutes * 60; | 120 poll_interval_seconds_ = minutes * 60; |
| 120 custom_poll_interval_use_count_ = kMaxNumberToUseCustomPollInterval; | 121 custom_poll_interval_use_count_ = kMaxNumberToUseCustomPollInterval; |
| 121 } | 122 } |
| 122 } | 123 } |
| 123 } | 124 } |
| (...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 226 // Otherwise, add a fuzzing variation to the delay. | 227 // Otherwise, add a fuzzing variation to the delay. |
| 227 // The fuzzing variation is off when the custom interval is used. | 228 // The fuzzing variation is off when the custom interval is used. |
| 228 if (!custom_poll_interval_use_count_) | 229 if (!custom_poll_interval_use_count_) |
| 229 delay_seconds += base::RandInt(0, kGCMChannelRequestTimeJitterSeconds); | 230 delay_seconds += base::RandInt(0, kGCMChannelRequestTimeJitterSeconds); |
| 230 } | 231 } |
| 231 | 232 |
| 232 return base::TimeDelta::FromSeconds(delay_seconds); | 233 return base::TimeDelta::FromSeconds(delay_seconds); |
| 233 } | 234 } |
| 234 | 235 |
| 235 } // namespace gcm | 236 } // namespace gcm |
| OLD | NEW |