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 |