Chromium Code Reviews
[email protected] (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(131)

Side by Side Diff: chrome/browser/chrome_browser_field_trials_mobile.cc

Issue 14247021: Split the field trial setup code into desktop and mobile files. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Rebased Created 7 years, 8 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
« no previous file with comments | « chrome/browser/chrome_browser_field_trials_mobile.h ('k') | chrome/chrome_browser.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/chrome_browser_field_trials_mobile.h"
6
7 #include <string>
8
9 #include "base/command_line.h"
10 #include "base/metrics/field_trial.h"
11 #include "base/prefs/pref_service.h"
12 #include "chrome/common/chrome_version_info.h"
13
14 namespace chrome {
15
16 namespace {
17
18 // Governs the rollout of the compression proxy for Chrome on mobile platforms.
19 // Always enabled in DEV and BETA versions.
Nico 2014/04/22 22:08:33 I saw this today. What's the motivation for this?
marq (ping after 24h) 2014/04/24 00:45:32 Nico, This trial just gated exposure of the setti
20 // Stable percentage will be controlled from server.
21 void DataCompressionProxyFieldTrial() {
22 const char kDataCompressionProxyFieldTrialName[] =
23 "DataCompressionProxyRollout";
24 const base::FieldTrial::Probability kDataCompressionProxyDivisor = 1000;
25
26 // 10/1000 = 1% for starters.
27 const base::FieldTrial::Probability kDataCompressionProxyStable = 10;
28 const char kEnabled[] = "Enabled";
29 const char kDisabled[] = "Disabled";
30
31 // Find out if this is a stable channel.
32 const bool kIsStableChannel =
33 chrome::VersionInfo::GetChannel() == chrome::VersionInfo::CHANNEL_STABLE;
34
35 // Experiment enabled until Jan 1, 2015. By default, disabled.
36 scoped_refptr<base::FieldTrial> trial(
37 base::FieldTrialList::FactoryGetFieldTrial(
38 kDataCompressionProxyFieldTrialName, kDataCompressionProxyDivisor,
39 kDisabled, 2015, 1, 1, NULL));
40
41 // We want our trial results to be persistent.
42 trial->UseOneTimeRandomization();
43 // Non-stable channels will run with probability 1.
44 const int kEnabledGroup = trial->AppendGroup(
45 kEnabled,
46 kIsStableChannel ?
47 kDataCompressionProxyStable : kDataCompressionProxyDivisor);
48
49 const int v = trial->group();
50 VLOG(1) << "DataCompression proxy enabled group id: " << kEnabledGroup
51 << ". Selected group id: " << v;
52 }
53
54 } // namespace
55
56 void SetupMobileFieldTrials(const CommandLine& parsed_command_line,
57 const base::Time& install_time,
58 PrefService* local_state) {
59 DataCompressionProxyFieldTrial();
60 }
61
62 } // namespace chrome
OLDNEW
« no previous file with comments | « chrome/browser/chrome_browser_field_trials_mobile.h ('k') | chrome/chrome_browser.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698