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

Side by Side Diff: chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings_factory.cc

Issue 893003002: Data Reduction Proxy class ownership updates and Settings cleanup (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: sgurun CR comments Created 5 years, 10 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
OLDNEW
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 "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings_fact ory.h" 5 #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings_fact ory.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/memory/singleton.h" 8 #include "base/memory/singleton.h"
9 #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings.h" 9 #include "chrome/browser/net/spdyproxy/data_reduction_proxy_chrome_settings.h"
10 #include "components/data_reduction_proxy/core/browser/data_reduction_proxy_usag e_stats.h"
11 #include "components/data_reduction_proxy/core/common/data_reduction_proxy_param s.h"
12 #include "components/keyed_service/content/browser_context_dependency_manager.h" 10 #include "components/keyed_service/content/browser_context_dependency_manager.h"
13 #include "components/keyed_service/content/browser_context_keyed_service_factory .h" 11 #include "components/keyed_service/content/browser_context_keyed_service_factory .h"
14 #include "content/public/browser/browser_thread.h"
15
16 #if defined(OS_ANDROID)
17 #include "base/android/build_info.h"
18 #endif
19
20 using content::BrowserThread;
21 using data_reduction_proxy::DataReductionProxyParams;
22 using data_reduction_proxy::DataReductionProxyUsageStats;
23 12
24 // static 13 // static
25 DataReductionProxyChromeSettings* 14 DataReductionProxyChromeSettings*
26 DataReductionProxyChromeSettingsFactory::GetForBrowserContext( 15 DataReductionProxyChromeSettingsFactory::GetForBrowserContext(
27 content::BrowserContext* context) { 16 content::BrowserContext* context) {
28 return static_cast<DataReductionProxyChromeSettings*>( 17 return static_cast<DataReductionProxyChromeSettings*>(
29 GetInstance()->GetServiceForBrowserContext(context, true)); 18 GetInstance()->GetServiceForBrowserContext(context, true));
30 } 19 }
31 20
32 // static 21 // static
(...skipping 16 matching lines...) Expand all
49 "DataReductionProxyChromeSettings", 38 "DataReductionProxyChromeSettings",
50 BrowserContextDependencyManager::GetInstance()) { 39 BrowserContextDependencyManager::GetInstance()) {
51 } 40 }
52 41
53 DataReductionProxyChromeSettingsFactory:: 42 DataReductionProxyChromeSettingsFactory::
54 ~DataReductionProxyChromeSettingsFactory() { 43 ~DataReductionProxyChromeSettingsFactory() {
55 } 44 }
56 45
57 KeyedService* DataReductionProxyChromeSettingsFactory::BuildServiceInstanceFor( 46 KeyedService* DataReductionProxyChromeSettingsFactory::BuildServiceInstanceFor(
58 content::BrowserContext* context) const { 47 content::BrowserContext* context) const {
59 int flags = DataReductionProxyParams::kAllowed | 48 return new DataReductionProxyChromeSettings();
60 DataReductionProxyParams::kFallbackAllowed |
61 DataReductionProxyParams::kAlternativeAllowed;
62 if (DataReductionProxyParams::IsIncludedInPromoFieldTrial())
63 flags |= DataReductionProxyParams::kPromoAllowed;
64 if (DataReductionProxyParams::IsIncludedInHoldbackFieldTrial())
65 flags |= DataReductionProxyParams::kHoldback;
66 #if defined(OS_ANDROID)
67 if (DataReductionProxyParams::IsIncludedInAndroidOnePromoFieldTrial(
68 base::android::BuildInfo::GetInstance()->android_build_fp())) {
69 flags |= DataReductionProxyParams::kPromoAllowed;
70 }
71 #endif
72
73 return new DataReductionProxyChromeSettings(
74 scoped_ptr<DataReductionProxyParams>(new DataReductionProxyParams(flags))
75 .Pass());
76 } 49 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698