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

Side by Side Diff: chrome/browser/prerender/prerender_field_trial.cc

Issue 23506038: Add options to disable each of the two aspects of the prerender service (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 3 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) 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 #include "chrome/browser/prerender/prerender_field_trial.h" 5 #include "chrome/browser/prerender/prerender_field_trial.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/metrics/field_trial.h" 9 #include "base/metrics/field_trial.h"
10 #include "base/metrics/histogram.h" 10 #include "base/metrics/histogram.h"
(...skipping 29 matching lines...) Expand all
40 40
41 const char kLocalPredictorSpecTrialName[] = "PrerenderLocalPredictorSpec"; 41 const char kLocalPredictorSpecTrialName[] = "PrerenderLocalPredictorSpec";
42 const char kLocalPredictorKeyName[] = "LocalPredictor"; 42 const char kLocalPredictorKeyName[] = "LocalPredictor";
43 const char kLocalPredictorUnencryptedSyncOnlyKeyName[] = 43 const char kLocalPredictorUnencryptedSyncOnlyKeyName[] =
44 "LocalPredictorUnencryptedSyncOnly"; 44 "LocalPredictorUnencryptedSyncOnly";
45 const char kSideEffectFreeWhitelistKeyName[] = "SideEffectFreeWhitelist"; 45 const char kSideEffectFreeWhitelistKeyName[] = "SideEffectFreeWhitelist";
46 const char kPrerenderLaunchKeyName[] = "PrerenderLaunch"; 46 const char kPrerenderLaunchKeyName[] = "PrerenderLaunch";
47 const char kPrerenderAlwaysControlKeyName[] = "PrerenderAlwaysControl"; 47 const char kPrerenderAlwaysControlKeyName[] = "PrerenderAlwaysControl";
48 const char kPrerenderQueryPrerenderServiceKeyName[] = 48 const char kPrerenderQueryPrerenderServiceKeyName[] =
49 "PrerenderQueryPrerenderService"; 49 "PrerenderQueryPrerenderService";
50 const char kPrerenderQueryPrerenderServiceCurrentURLKeyName[] =
51 "PrerenderQueryPrerenderServiceCurrentURL";
52 const char kPrerenderQueryPrerenderServiceCandidateURLsKeyName[] =
53 "PrerenderQueryPrerenderServiceCandidateURLs";
50 const char kPrerenderServiceBehaviorIDKeyName[] = "PrerenderServiceBehaviorID"; 54 const char kPrerenderServiceBehaviorIDKeyName[] = "PrerenderServiceBehaviorID";
51 const char kPrerenderServiceFetchTimeoutKeyName[] = 55 const char kPrerenderServiceFetchTimeoutKeyName[] =
52 "PrerenderServiceFetchTimeoutMs"; 56 "PrerenderServiceFetchTimeoutMs";
53 const char kPrerenderTTLKeyName[] = "PrerenderTTLSeconds"; 57 const char kPrerenderTTLKeyName[] = "PrerenderTTLSeconds";
54 const char kPrerenderPriorityHalfLifeTimeKeyName[] = 58 const char kPrerenderPriorityHalfLifeTimeKeyName[] =
55 "PrerenderPriorityHalfLifeTimeSeconds"; 59 "PrerenderPriorityHalfLifeTimeSeconds";
56 const char kMaxConcurrentPrerenderKeyName[] = "MaxConcurrentPrerenders"; 60 const char kMaxConcurrentPrerenderKeyName[] = "MaxConcurrentPrerenders";
57 const char kSkipFragment[] = "SkipFragment"; 61 const char kSkipFragment[] = "SkipFragment";
58 const char kSkipHTTPS[] = "SkipHTTPS"; 62 const char kSkipHTTPS[] = "SkipHTTPS";
59 const char kSkipWhitelist[] = "SkipWhitelist"; 63 const char kSkipWhitelist[] = "SkipWhitelist";
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after
366 return GetLocalPredictorSpecValue(kPrerenderAlwaysControlKeyName) == 370 return GetLocalPredictorSpecValue(kPrerenderAlwaysControlKeyName) ==
367 kEnabledGroup; 371 kEnabledGroup;
368 } 372 }
369 373
370 bool ShouldQueryPrerenderService(Profile* profile) { 374 bool ShouldQueryPrerenderService(Profile* profile) {
371 return IsUnencryptedSyncEnabled(profile) && 375 return IsUnencryptedSyncEnabled(profile) &&
372 GetLocalPredictorSpecValue(kPrerenderQueryPrerenderServiceKeyName) == 376 GetLocalPredictorSpecValue(kPrerenderQueryPrerenderServiceKeyName) ==
373 kEnabledGroup; 377 kEnabledGroup;
374 } 378 }
375 379
380 bool ShouldQueryPrerenderServiceForCurrentURL() {
381 return GetLocalPredictorSpecValue(
382 kPrerenderQueryPrerenderServiceCurrentURLKeyName) != kDisabledGroup;
383 }
384
385 bool ShouldQueryPrerenderServiceForCandidateURLs() {
386 return GetLocalPredictorSpecValue(
387 kPrerenderQueryPrerenderServiceCandidateURLsKeyName) != kDisabledGroup;
388 }
389
376 string GetPrerenderServiceURLPrefix() { 390 string GetPrerenderServiceURLPrefix() {
377 string prefix = chrome_variations::GetVariationParamValue( 391 string prefix = chrome_variations::GetVariationParamValue(
378 kLocalPredictorSpecTrialName, 392 kLocalPredictorSpecTrialName,
379 kPrerenderServiceURLPrefixParameterName); 393 kPrerenderServiceURLPrefixParameterName);
380 if (prefix.empty()) 394 if (prefix.empty())
381 prefix = kDefaultPrerenderServiceURLPrefix; 395 prefix = kDefaultPrerenderServiceURLPrefix;
382 return prefix; 396 return prefix;
383 } 397 }
384 398
385 int GetPrerenderServiceBehaviorID() { 399 int GetPrerenderServiceBehaviorID() {
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 return GetLocalPredictorSpecValue(kSkipPrerenderLocalCanadidates) == 478 return GetLocalPredictorSpecValue(kSkipPrerenderLocalCanadidates) ==
465 kEnabledGroup; 479 kEnabledGroup;
466 } 480 }
467 481
468 bool SkipLocalPredictorServiceCandidates() { 482 bool SkipLocalPredictorServiceCandidates() {
469 return GetLocalPredictorSpecValue(kSkipPrerenderServiceCanadidates) == 483 return GetLocalPredictorSpecValue(kSkipPrerenderServiceCanadidates) ==
470 kEnabledGroup; 484 kEnabledGroup;
471 } 485 }
472 486
473 } // namespace prerender 487 } // namespace prerender
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698