Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: chrome/browser/chromeos/net/network_portal_detector_impl.h

Issue 99223009: Fixed current OOBE captive portal metrics. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix. Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 #ifndef CHROME_BROWSER_CHROMEOS_NET_NETWORK_PORTAL_DETECTOR_IMPL_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_NET_NETWORK_PORTAL_DETECTOR_IMPL_H_
6 #define CHROME_BROWSER_CHROMEOS_NET_NETWORK_PORTAL_DETECTOR_IMPL_H_ 6 #define CHROME_BROWSER_CHROMEOS_NET_NETWORK_PORTAL_DETECTOR_IMPL_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 24 matching lines...) Expand all
35 35
36 // This class handles all notifications about network changes from 36 // This class handles all notifications about network changes from
37 // NetworkStateHandler and delegates portal detection for the default 37 // NetworkStateHandler and delegates portal detection for the default
38 // network to CaptivePortalService. 38 // network to CaptivePortalService.
39 class NetworkPortalDetectorImpl 39 class NetworkPortalDetectorImpl
40 : public NetworkPortalDetector, 40 : public NetworkPortalDetector,
41 public base::NonThreadSafe, 41 public base::NonThreadSafe,
42 public chromeos::NetworkStateHandlerObserver, 42 public chromeos::NetworkStateHandlerObserver,
43 public content::NotificationObserver { 43 public content::NotificationObserver {
44 public: 44 public:
45 static const char kDetectionResultHistogram[];
46 static const char kDetectionDurationHistogram[];
47 static const char kShillOnlineHistogram[];
48 static const char kShillPortalHistogram[];
49 static const char kShillOfflineHistogram[];
50
45 explicit NetworkPortalDetectorImpl( 51 explicit NetworkPortalDetectorImpl(
46 const scoped_refptr<net::URLRequestContextGetter>& request_context); 52 const scoped_refptr<net::URLRequestContextGetter>& request_context);
47 virtual ~NetworkPortalDetectorImpl(); 53 virtual ~NetworkPortalDetectorImpl();
48 54
49 // NetworkPortalDetector implementation: 55 // NetworkPortalDetector implementation:
50 virtual void AddObserver(Observer* observer) OVERRIDE; 56 virtual void AddObserver(Observer* observer) OVERRIDE;
51 virtual void AddAndFireObserver(Observer* observer) OVERRIDE; 57 virtual void AddAndFireObserver(Observer* observer) OVERRIDE;
52 virtual void RemoveObserver(Observer* observer) OVERRIDE; 58 virtual void RemoveObserver(Observer* observer) OVERRIDE;
53 virtual CaptivePortalState GetCaptivePortalState( 59 virtual CaptivePortalState GetCaptivePortalState(
54 const chromeos::NetworkState* network) OVERRIDE; 60 const chromeos::NetworkState* network) OVERRIDE;
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 // cancelled. 186 // cancelled.
181 bool DetectionTimeoutIsCancelledForTesting() const; 187 bool DetectionTimeoutIsCancelledForTesting() const;
182 188
183 // Returns timeout for current (or immediate) detection attempt. 189 // Returns timeout for current (or immediate) detection attempt.
184 // The following rules are used for timeout computation: 190 // The following rules are used for timeout computation:
185 // * if default (active) network is NULL, kBaseRequestTimeoutSec is used 191 // * if default (active) network is NULL, kBaseRequestTimeoutSec is used
186 // * if lazy detection mode is enabled, kLazyRequestTimeoutSec is used 192 // * if lazy detection mode is enabled, kLazyRequestTimeoutSec is used
187 // * otherwise, timeout equals to |attempt_count_| * kBaseRequestTimeoutSec 193 // * otherwise, timeout equals to |attempt_count_| * kBaseRequestTimeoutSec
188 int GetRequestTimeoutSec() const; 194 int GetRequestTimeoutSec() const;
189 195
196 // Record detection stats such as detection duration and detection
197 // result in UMA.
198 void RecordDetectionStats(const NetworkState* network,
199 CaptivePortalStatus status);
200
190 // Name of the default network. 201 // Name of the default network.
191 std::string default_network_name_; 202 std::string default_network_name_;
192 203
193 // Unique identifier of the default network. 204 // Unique identifier of the default network.
194 std::string default_network_id_; 205 std::string default_network_id_;
195 206
196 // Service path of the default network. 207 // Service path of the default network.
197 std::string default_service_path_; 208 std::string default_service_path_;
198 209
199 // Connection state of the default network. 210 // Connection state of the default network.
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
249 bool request_timeout_for_testing_initialized_; 260 bool request_timeout_for_testing_initialized_;
250 261
251 content::NotificationRegistrar registrar_; 262 content::NotificationRegistrar registrar_;
252 263
253 DISALLOW_COPY_AND_ASSIGN(NetworkPortalDetectorImpl); 264 DISALLOW_COPY_AND_ASSIGN(NetworkPortalDetectorImpl);
254 }; 265 };
255 266
256 } // namespace chromeos 267 } // namespace chromeos
257 268
258 #endif // CHROME_BROWSER_CHROMEOS_NET_NETWORK_PORTAL_DETECTOR_IMPL_H_ 269 #endif // CHROME_BROWSER_CHROMEOS_NET_NETWORK_PORTAL_DETECTOR_IMPL_H_
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/net/network_portal_detector.cc ('k') | chrome/browser/chromeos/net/network_portal_detector_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698