| 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 "chromeos/network/portal_detector/network_portal_detector_strategy.h" | 5 #include "chromeos/network/portal_detector/network_portal_detector_strategy.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "chromeos/network/network_handler.h" | 8 #include "chromeos/network/network_handler.h" |
| 9 #include "chromeos/network/network_state.h" | 9 #include "chromeos/network/network_state.h" |
| 10 #include "chromeos/network/network_state_handler.h" | 10 #include "chromeos/network/network_state_handler.h" |
| (...skipping 10 matching lines...) Expand all Loading... |
| 21 public: | 21 public: |
| 22 static const int kBaseAttemptTimeoutSec = 5; | 22 static const int kBaseAttemptTimeoutSec = 5; |
| 23 static const int kMaxAttemptTimeoutSec = 30; | 23 static const int kMaxAttemptTimeoutSec = 30; |
| 24 | 24 |
| 25 explicit LoginScreenStrategy(PortalDetectorStrategy::Delegate* delegate) | 25 explicit LoginScreenStrategy(PortalDetectorStrategy::Delegate* delegate) |
| 26 : PortalDetectorStrategy(delegate) {} | 26 : PortalDetectorStrategy(delegate) {} |
| 27 virtual ~LoginScreenStrategy() {} | 27 virtual ~LoginScreenStrategy() {} |
| 28 | 28 |
| 29 protected: | 29 protected: |
| 30 // PortalDetectorStrategy overrides: | 30 // PortalDetectorStrategy overrides: |
| 31 virtual StrategyId Id() const OVERRIDE { return STRATEGY_ID_LOGIN_SCREEN; } | 31 virtual StrategyId Id() const override { return STRATEGY_ID_LOGIN_SCREEN; } |
| 32 virtual base::TimeDelta GetNextAttemptTimeoutImpl() OVERRIDE { | 32 virtual base::TimeDelta GetNextAttemptTimeoutImpl() override { |
| 33 if (DefaultNetwork() && delegate_->NoResponseResultCount() != 0) { | 33 if (DefaultNetwork() && delegate_->NoResponseResultCount() != 0) { |
| 34 int timeout = kMaxAttemptTimeoutSec; | 34 int timeout = kMaxAttemptTimeoutSec; |
| 35 if (kMaxAttemptTimeoutSec / (delegate_->NoResponseResultCount() + 1) > | 35 if (kMaxAttemptTimeoutSec / (delegate_->NoResponseResultCount() + 1) > |
| 36 kBaseAttemptTimeoutSec) { | 36 kBaseAttemptTimeoutSec) { |
| 37 timeout = | 37 timeout = |
| 38 kBaseAttemptTimeoutSec * (delegate_->NoResponseResultCount() + 1); | 38 kBaseAttemptTimeoutSec * (delegate_->NoResponseResultCount() + 1); |
| 39 } | 39 } |
| 40 return base::TimeDelta::FromSeconds(timeout); | 40 return base::TimeDelta::FromSeconds(timeout); |
| 41 } | 41 } |
| 42 return base::TimeDelta::FromSeconds(kBaseAttemptTimeoutSec); | 42 return base::TimeDelta::FromSeconds(kBaseAttemptTimeoutSec); |
| 43 } | 43 } |
| 44 | 44 |
| 45 private: | 45 private: |
| 46 DISALLOW_COPY_AND_ASSIGN(LoginScreenStrategy); | 46 DISALLOW_COPY_AND_ASSIGN(LoginScreenStrategy); |
| 47 }; | 47 }; |
| 48 | 48 |
| 49 class ErrorScreenStrategy : public PortalDetectorStrategy { | 49 class ErrorScreenStrategy : public PortalDetectorStrategy { |
| 50 public: | 50 public: |
| 51 static const int kAttemptTimeoutSec = 15; | 51 static const int kAttemptTimeoutSec = 15; |
| 52 | 52 |
| 53 explicit ErrorScreenStrategy(PortalDetectorStrategy::Delegate* delegate) | 53 explicit ErrorScreenStrategy(PortalDetectorStrategy::Delegate* delegate) |
| 54 : PortalDetectorStrategy(delegate) {} | 54 : PortalDetectorStrategy(delegate) {} |
| 55 virtual ~ErrorScreenStrategy() {} | 55 virtual ~ErrorScreenStrategy() {} |
| 56 | 56 |
| 57 protected: | 57 protected: |
| 58 // PortalDetectorStrategy overrides: | 58 // PortalDetectorStrategy overrides: |
| 59 virtual StrategyId Id() const OVERRIDE { return STRATEGY_ID_ERROR_SCREEN; } | 59 virtual StrategyId Id() const override { return STRATEGY_ID_ERROR_SCREEN; } |
| 60 virtual base::TimeDelta GetNextAttemptTimeoutImpl() OVERRIDE { | 60 virtual base::TimeDelta GetNextAttemptTimeoutImpl() override { |
| 61 return base::TimeDelta::FromSeconds(kAttemptTimeoutSec); | 61 return base::TimeDelta::FromSeconds(kAttemptTimeoutSec); |
| 62 } | 62 } |
| 63 | 63 |
| 64 private: | 64 private: |
| 65 DISALLOW_COPY_AND_ASSIGN(ErrorScreenStrategy); | 65 DISALLOW_COPY_AND_ASSIGN(ErrorScreenStrategy); |
| 66 }; | 66 }; |
| 67 | 67 |
| 68 class SessionStrategy : public PortalDetectorStrategy { | 68 class SessionStrategy : public PortalDetectorStrategy { |
| 69 public: | 69 public: |
| 70 static const int kMaxFastAttempts = 3; | 70 static const int kMaxFastAttempts = 3; |
| 71 static const int kFastAttemptTimeoutSec = 3; | 71 static const int kFastAttemptTimeoutSec = 3; |
| 72 static const int kSlowAttemptTimeoutSec = 5; | 72 static const int kSlowAttemptTimeoutSec = 5; |
| 73 | 73 |
| 74 explicit SessionStrategy(PortalDetectorStrategy::Delegate* delegate) | 74 explicit SessionStrategy(PortalDetectorStrategy::Delegate* delegate) |
| 75 : PortalDetectorStrategy(delegate) {} | 75 : PortalDetectorStrategy(delegate) {} |
| 76 virtual ~SessionStrategy() {} | 76 virtual ~SessionStrategy() {} |
| 77 | 77 |
| 78 protected: | 78 protected: |
| 79 virtual StrategyId Id() const OVERRIDE { return STRATEGY_ID_SESSION; } | 79 virtual StrategyId Id() const override { return STRATEGY_ID_SESSION; } |
| 80 virtual base::TimeDelta GetNextAttemptTimeoutImpl() OVERRIDE { | 80 virtual base::TimeDelta GetNextAttemptTimeoutImpl() override { |
| 81 int timeout; | 81 int timeout; |
| 82 if (delegate_->NoResponseResultCount() < kMaxFastAttempts) | 82 if (delegate_->NoResponseResultCount() < kMaxFastAttempts) |
| 83 timeout = kFastAttemptTimeoutSec; | 83 timeout = kFastAttemptTimeoutSec; |
| 84 else | 84 else |
| 85 timeout = kSlowAttemptTimeoutSec; | 85 timeout = kSlowAttemptTimeoutSec; |
| 86 return base::TimeDelta::FromSeconds(timeout); | 86 return base::TimeDelta::FromSeconds(timeout); |
| 87 } | 87 } |
| 88 | 88 |
| 89 private: | 89 private: |
| 90 DISALLOW_COPY_AND_ASSIGN(SessionStrategy); | 90 DISALLOW_COPY_AND_ASSIGN(SessionStrategy); |
| 91 }; | 91 }; |
| 92 | 92 |
| 93 } // namespace | 93 } // namespace |
| 94 | 94 |
| 95 // PortalDetectorStrategy::BackoffEntryImpl ------------------------------------ | 95 // PortalDetectorStrategy::BackoffEntryImpl ------------------------------------ |
| 96 | 96 |
| 97 class PortalDetectorStrategy::BackoffEntryImpl : public net::BackoffEntry { | 97 class PortalDetectorStrategy::BackoffEntryImpl : public net::BackoffEntry { |
| 98 public: | 98 public: |
| 99 BackoffEntryImpl(const net::BackoffEntry::Policy* const policy, | 99 BackoffEntryImpl(const net::BackoffEntry::Policy* const policy, |
| 100 PortalDetectorStrategy::Delegate* delegate) | 100 PortalDetectorStrategy::Delegate* delegate) |
| 101 : net::BackoffEntry(policy), delegate_(delegate) {} | 101 : net::BackoffEntry(policy), delegate_(delegate) {} |
| 102 virtual ~BackoffEntryImpl() {} | 102 virtual ~BackoffEntryImpl() {} |
| 103 | 103 |
| 104 // net::BackoffEntry overrides: | 104 // net::BackoffEntry overrides: |
| 105 virtual base::TimeTicks ImplGetTimeNow() const OVERRIDE { | 105 virtual base::TimeTicks ImplGetTimeNow() const override { |
| 106 return delegate_->GetCurrentTimeTicks(); | 106 return delegate_->GetCurrentTimeTicks(); |
| 107 } | 107 } |
| 108 | 108 |
| 109 private: | 109 private: |
| 110 PortalDetectorStrategy::Delegate* delegate_; | 110 PortalDetectorStrategy::Delegate* delegate_; |
| 111 | 111 |
| 112 DISALLOW_COPY_AND_ASSIGN(BackoffEntryImpl); | 112 DISALLOW_COPY_AND_ASSIGN(BackoffEntryImpl); |
| 113 }; | 113 }; |
| 114 | 114 |
| 115 // PortalDetectorStrategy ----------------------------------------------------- | 115 // PortalDetectorStrategy ----------------------------------------------------- |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 192 | 192 |
| 193 void PortalDetectorStrategy::OnDetectionCompleted() { | 193 void PortalDetectorStrategy::OnDetectionCompleted() { |
| 194 backoff_entry_->InformOfRequest(false); | 194 backoff_entry_->InformOfRequest(false); |
| 195 } | 195 } |
| 196 | 196 |
| 197 base::TimeDelta PortalDetectorStrategy::GetNextAttemptTimeoutImpl() { | 197 base::TimeDelta PortalDetectorStrategy::GetNextAttemptTimeoutImpl() { |
| 198 return base::TimeDelta(); | 198 return base::TimeDelta(); |
| 199 } | 199 } |
| 200 | 200 |
| 201 } // namespace chromeos | 201 } // namespace chromeos |
| OLD | NEW |