summaryrefslogtreecommitdiffstats
path: root/chrome/browser/prerender
diff options
context:
space:
mode:
authortburkard@chromium.org <tburkard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-02 15:21:58 +0000
committertburkard@chromium.org <tburkard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-02 15:21:58 +0000
commit7a966579811ce220ded2ecfb2c40709a1d05e4a1 (patch)
tree8e210afc31f6b2a094a87c1ba0497256041d63d8 /chrome/browser/prerender
parent2dd68fd375448e951f5476f0de313b6551d9a785 (diff)
downloadchromium_src-7a966579811ce220ded2ecfb2c40709a1d05e4a1.zip
chromium_src-7a966579811ce220ded2ecfb2c40709a1d05e4a1.tar.gz
chromium_src-7a966579811ce220ded2ecfb2c40709a1d05e4a1.tar.bz2
Preparation to add support for side-effect free whitelist in safebrowsing.
Find LGTM's in https://codereview.chromium.org/14584002/ Review URL: https://codereview.chromium.org/14582005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@197923 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/prerender')
-rw-r--r--chrome/browser/prerender/prerender_field_trial.cc25
-rw-r--r--chrome/browser/prerender/prerender_field_trial.h3
2 files changed, 28 insertions, 0 deletions
diff --git a/chrome/browser/prerender/prerender_field_trial.cc b/chrome/browser/prerender/prerender_field_trial.cc
index 312c9fb..b74e79a 100644
--- a/chrome/browser/prerender/prerender_field_trial.cc
+++ b/chrome/browser/prerender/prerender_field_trial.cc
@@ -33,6 +33,10 @@ const char kLoggedInPredictorTrialName[] = "PrerenderLoggedInPredictor";
const char kLoggedInPredictorEnabledGroup[] = "Enabled";
const char kLoggedInPredictorDisabledGroup[] = "Disabled";
+const char kSideEffectFreeWhitelistTrialName[] = "SideEffectFreeWhitelist";
+const char kSideEffectFreeWhitelistEnabledGroup[] = "Enabled";
+const char kSideEffectFreeWhitelistDisabledGroup[] = "Disabled";
+
void SetupPrefetchFieldTrial() {
chrome::VersionInfo::Channel channel = chrome::VersionInfo::GetChannel();
if (channel == chrome::VersionInfo::CHANNEL_STABLE ||
@@ -146,6 +150,7 @@ void SetupPrerenderFieldTrial() {
void ConfigureOmniboxPrerender();
void ConfigureLoggedInPredictor();
+void ConfigureSideEffectFreeWhitelist();
void ConfigurePrefetchAndPrerender(const CommandLine& command_line) {
enum PrerenderOption {
@@ -203,6 +208,7 @@ void ConfigurePrefetchAndPrerender(const CommandLine& command_line) {
ConfigureOmniboxPrerender();
ConfigureLoggedInPredictor();
+ ConfigureSideEffectFreeWhitelist();
}
void ConfigureOmniboxPrerender() {
@@ -236,6 +242,20 @@ void ConfigureLoggedInPredictor() {
logged_in_predictor_trial->AppendGroup(kLoggedInPredictorEnabledGroup, 100);
}
+void ConfigureSideEffectFreeWhitelist() {
+ scoped_refptr<FieldTrial> side_effect_free_whitelist_trial(
+ FieldTrialList::FactoryGetFieldTrial(
+ kSideEffectFreeWhitelistTrialName, 100,
+ kSideEffectFreeWhitelistDisabledGroup, 2013, 12, 31, NULL));
+ chrome::VersionInfo::Channel channel = chrome::VersionInfo::GetChannel();
+ if (channel == chrome::VersionInfo::CHANNEL_STABLE ||
+ channel == chrome::VersionInfo::CHANNEL_BETA) {
+ return;
+ }
+ side_effect_free_whitelist_trial->AppendGroup(
+ kSideEffectFreeWhitelistEnabledGroup, 100);
+}
+
bool IsOmniboxEnabled(Profile* profile) {
if (!profile)
return false;
@@ -274,4 +294,9 @@ bool IsLoggedInPredictorEnabled() {
kLoggedInPredictorEnabledGroup;
}
+bool IsSideEffectFreeWhitelistEnabled() {
+ return base::FieldTrialList::FindFullName(kSideEffectFreeWhitelistTrialName)
+ == kSideEffectFreeWhitelistEnabledGroup;
+}
+
} // namespace prerender
diff --git a/chrome/browser/prerender/prerender_field_trial.h b/chrome/browser/prerender/prerender_field_trial.h
index 7ce9d9a..5e80a01 100644
--- a/chrome/browser/prerender/prerender_field_trial.h
+++ b/chrome/browser/prerender/prerender_field_trial.h
@@ -27,6 +27,9 @@ bool IsLocalPredictorEnabled();
// Returns true iff the LoggedIn Predictor is enabled.
bool IsLoggedInPredictorEnabled();
+// Returns true iff the side-effect free whitelist is enabled.
+bool IsSideEffectFreeWhitelistEnabled();
+
} // namespace prerender
#endif // CHROME_BROWSER_PRERENDER_PRERENDER_FIELD_TRIAL_H_