| OLD | NEW | 
|   1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |   1 // Copyright (c) 2012 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_NET_NET_PREF_OBSERVER_H_ |   5 #ifndef CHROME_BROWSER_NET_NET_PREF_OBSERVER_H_ | 
|   6 #define CHROME_BROWSER_NET_NET_PREF_OBSERVER_H_ |   6 #define CHROME_BROWSER_NET_NET_PREF_OBSERVER_H_ | 
|   7  |   7  | 
|   8 #include "base/basictypes.h" |   8 #include "base/basictypes.h" | 
|   9 #include "base/prefs/public/pref_observer.h" |  | 
|  10 #include "chrome/browser/api/prefs/pref_member.h" |   9 #include "chrome/browser/api/prefs/pref_member.h" | 
|  11  |  10  | 
|  12 namespace chrome_browser_net { |  11 namespace chrome_browser_net { | 
|  13 class Predictor; |  12 class Predictor; | 
|  14 } |  13 } | 
|  15  |  14  | 
|  16 namespace prerender { |  15 namespace prerender { | 
|  17 class PrerenderManager; |  16 class PrerenderManager; | 
|  18 } |  17 } | 
|  19  |  18  | 
|  20 class PrefService; |  19 class PrefService; | 
|  21  |  20  | 
|  22 // Monitors network-related preferences for changes and applies them. |  21 // Monitors network-related preferences for changes and applies them. | 
|  23 // The supplied PrefService must outlive this NetPrefObserver. |  22 // The supplied PrefService must outlive this NetPrefObserver. | 
|  24 // Must be used only on the UI thread. |  23 // Must be used only on the UI thread. | 
|  25 class NetPrefObserver : public PrefObserver { |  24 class NetPrefObserver { | 
|  26  public: |  25  public: | 
|  27   // |prefs| must be non-NULL and |*prefs| must outlive this. |  26   // |prefs| must be non-NULL and |*prefs| must outlive this. | 
|  28   // |prerender_manager| may be NULL. If not, |*prerender_manager| must |  27   // |prerender_manager| may be NULL. If not, |*prerender_manager| must | 
|  29   // outlive this. |  28   // outlive this. | 
|  30   NetPrefObserver(PrefService* prefs, |  29   NetPrefObserver(PrefService* prefs, | 
|  31                   prerender::PrerenderManager* prerender_manager, |  30                   prerender::PrerenderManager* prerender_manager, | 
|  32                   chrome_browser_net::Predictor* predictor); |  31                   chrome_browser_net::Predictor* predictor); | 
|  33   virtual ~NetPrefObserver(); |  32   virtual ~NetPrefObserver(); | 
|  34  |  33  | 
|  35   // PrefObserver |  | 
|  36   virtual void OnPreferenceChanged(PrefServiceBase* service, |  | 
|  37                                    const std::string& pref_name) OVERRIDE; |  | 
|  38  |  | 
|  39   static void RegisterPrefs(PrefService* prefs); |  34   static void RegisterPrefs(PrefService* prefs); | 
|  40  |  35  | 
|  41  private: |  36  private: | 
|  42   void ApplySettings(); |  37   void ApplySettings(); | 
|  43  |  38  | 
|  44   BooleanPrefMember network_prediction_enabled_; |  39   BooleanPrefMember network_prediction_enabled_; | 
|  45   BooleanPrefMember spdy_disabled_; |  40   BooleanPrefMember spdy_disabled_; | 
|  46   prerender::PrerenderManager* prerender_manager_; |  41   prerender::PrerenderManager* prerender_manager_; | 
|  47   chrome_browser_net::Predictor* predictor_; |  42   chrome_browser_net::Predictor* predictor_; | 
|  48  |  43  | 
|  49   DISALLOW_COPY_AND_ASSIGN(NetPrefObserver); |  44   DISALLOW_COPY_AND_ASSIGN(NetPrefObserver); | 
|  50 }; |  45 }; | 
|  51  |  46  | 
|  52 #endif  // CHROME_BROWSER_NET_NET_PREF_OBSERVER_H_ |  47 #endif  // CHROME_BROWSER_NET_NET_PREF_OBSERVER_H_ | 
| OLD | NEW |