| 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 #include "chrome/browser/chrome_browser_main.h" | 5 #include "chrome/browser/chrome_browser_main.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <string> | 8 #include <string> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 48 #include "chrome/browser/jankometer.h" | 48 #include "chrome/browser/jankometer.h" |
| 49 #include "chrome/browser/language_usage_metrics.h" | 49 #include "chrome/browser/language_usage_metrics.h" |
| 50 #include "chrome/browser/metrics/field_trial_synchronizer.h" | 50 #include "chrome/browser/metrics/field_trial_synchronizer.h" |
| 51 #include "chrome/browser/metrics/histogram_synchronizer.h" | 51 #include "chrome/browser/metrics/histogram_synchronizer.h" |
| 52 #include "chrome/browser/metrics/metrics_log.h" | 52 #include "chrome/browser/metrics/metrics_log.h" |
| 53 #include "chrome/browser/metrics/metrics_service.h" | 53 #include "chrome/browser/metrics/metrics_service.h" |
| 54 #include "chrome/browser/metrics/thread_watcher.h" | 54 #include "chrome/browser/metrics/thread_watcher.h" |
| 55 #include "chrome/browser/metrics/tracking_synchronizer.h" | 55 #include "chrome/browser/metrics/tracking_synchronizer.h" |
| 56 #include "chrome/browser/nacl_host/nacl_process_host.h" | 56 #include "chrome/browser/nacl_host/nacl_process_host.h" |
| 57 #include "chrome/browser/net/chrome_net_log.h" | 57 #include "chrome/browser/net/chrome_net_log.h" |
| 58 #include "chrome/browser/net/chrome_network_delegate.h" |
| 58 #include "chrome/browser/net/predictor.h" | 59 #include "chrome/browser/net/predictor.h" |
| 59 #include "chrome/browser/notifications/desktop_notification_service.h" | 60 #include "chrome/browser/notifications/desktop_notification_service.h" |
| 60 #include "chrome/browser/notifications/desktop_notification_service_factory.h" | 61 #include "chrome/browser/notifications/desktop_notification_service_factory.h" |
| 61 #include "chrome/browser/plugin_prefs.h" | 62 #include "chrome/browser/plugin_prefs.h" |
| 62 #include "chrome/browser/prefs/pref_service.h" | 63 #include "chrome/browser/prefs/pref_service.h" |
| 63 #include "chrome/browser/prefs/pref_value_store.h" | 64 #include "chrome/browser/prefs/pref_value_store.h" |
| 64 #include "chrome/browser/prefs/scoped_user_pref_update.h" | 65 #include "chrome/browser/prefs/scoped_user_pref_update.h" |
| 65 #include "chrome/browser/prerender/prerender_field_trial.h" | 66 #include "chrome/browser/prerender/prerender_field_trial.h" |
| 66 #include "chrome/browser/printing/cloud_print/cloud_print_proxy_service.h" | 67 #include "chrome/browser/printing/cloud_print/cloud_print_proxy_service.h" |
| 67 #include "chrome/browser/printing/cloud_print/cloud_print_proxy_service_factory.
h" | 68 #include "chrome/browser/printing/cloud_print/cloud_print_proxy_service_factory.
h" |
| (...skipping 931 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 999 // Create a 100% field trial based on the brand code. | 1000 // Create a 100% field trial based on the brand code. |
| 1000 if (auto_launch_trial::IsInExperimentGroup(brand)) { | 1001 if (auto_launch_trial::IsInExperimentGroup(brand)) { |
| 1001 base::FieldTrialList::CreateFieldTrial(kAutoLaunchTrialName, | 1002 base::FieldTrialList::CreateFieldTrial(kAutoLaunchTrialName, |
| 1002 kAutoLaunchTrialAutoLaunchGroup); | 1003 kAutoLaunchTrialAutoLaunchGroup); |
| 1003 } else if (auto_launch_trial::IsInControlGroup(brand)) { | 1004 } else if (auto_launch_trial::IsInControlGroup(brand)) { |
| 1004 base::FieldTrialList::CreateFieldTrial(kAutoLaunchTrialName, | 1005 base::FieldTrialList::CreateFieldTrial(kAutoLaunchTrialName, |
| 1005 kAutoLaunchTrialControlGroup); | 1006 kAutoLaunchTrialControlGroup); |
| 1006 } | 1007 } |
| 1007 } | 1008 } |
| 1008 | 1009 |
| 1010 void ChromeBrowserMainParts::ComodoDNSExperimentFieldTrial() { |
| 1011 // 100% probability of being in the experiment group until the timeout. |
| 1012 const base::FieldTrial::Probability kDivisor = 1; |
| 1013 const base::FieldTrial::Probability kProbability = 1; |
| 1014 |
| 1015 // After April 15, 2012 builds, it will always be in default group. |
| 1016 scoped_refptr<base::FieldTrial> trial( |
| 1017 new base::FieldTrial("ComodoDNSExperiment", kDivisor, |
| 1018 "inactive", 2012, 4, 15)); |
| 1019 |
| 1020 const int active = trial->AppendGroup("active", kProbability); |
| 1021 |
| 1022 if (trial->group() == active) |
| 1023 ChromeNetworkDelegate::EnableComodoDNSExperiment(); |
| 1024 } |
| 1025 |
| 1009 // ChromeBrowserMainParts: |SetupMetricsAndFieldTrials()| related -------------- | 1026 // ChromeBrowserMainParts: |SetupMetricsAndFieldTrials()| related -------------- |
| 1010 | 1027 |
| 1011 void ChromeBrowserMainParts::SetupFieldTrials(bool metrics_recording_enabled, | 1028 void ChromeBrowserMainParts::SetupFieldTrials(bool metrics_recording_enabled, |
| 1012 bool proxy_policy_is_set) { | 1029 bool proxy_policy_is_set) { |
| 1013 // Note: make sure to call ConnectionFieldTrial() before | 1030 // Note: make sure to call ConnectionFieldTrial() before |
| 1014 // ProxyConnectionsFieldTrial(). | 1031 // ProxyConnectionsFieldTrial(). |
| 1015 ConnectionFieldTrial(); | 1032 ConnectionFieldTrial(); |
| 1016 SocketTimeoutFieldTrial(); | 1033 SocketTimeoutFieldTrial(); |
| 1017 // If a policy is defining the number of active connections this field test | 1034 // If a policy is defining the number of active connections this field test |
| 1018 // shoud not be performed. | 1035 // shoud not be performed. |
| 1019 if (!proxy_policy_is_set) | 1036 if (!proxy_policy_is_set) |
| 1020 ProxyConnectionsFieldTrial(); | 1037 ProxyConnectionsFieldTrial(); |
| 1021 prerender::ConfigurePrefetchAndPrerender(parsed_command_line()); | 1038 prerender::ConfigurePrefetchAndPrerender(parsed_command_line()); |
| 1022 InstantFieldTrial::Activate(); | 1039 InstantFieldTrial::Activate(); |
| 1023 SpdyFieldTrial(); | 1040 SpdyFieldTrial(); |
| 1024 ConnectBackupJobsFieldTrial(); | 1041 ConnectBackupJobsFieldTrial(); |
| 1025 WarmConnectionFieldTrial(); | 1042 WarmConnectionFieldTrial(); |
| 1026 PredictorFieldTrial(); | 1043 PredictorFieldTrial(); |
| 1027 DefaultAppsFieldTrial(); | 1044 DefaultAppsFieldTrial(); |
| 1028 AutoLaunchChromeFieldTrial(); | 1045 AutoLaunchChromeFieldTrial(); |
| 1046 ComodoDNSExperimentFieldTrial(); |
| 1029 AutocompleteFieldTrial::Activate(); | 1047 AutocompleteFieldTrial::Activate(); |
| 1030 NewTabUI::SetupFieldTrials(); | 1048 NewTabUI::SetupFieldTrials(); |
| 1031 } | 1049 } |
| 1032 | 1050 |
| 1033 void ChromeBrowserMainParts::StartMetricsRecording() { | 1051 void ChromeBrowserMainParts::StartMetricsRecording() { |
| 1034 MetricsService* metrics = g_browser_process->metrics_service(); | 1052 MetricsService* metrics = g_browser_process->metrics_service(); |
| 1035 if (parsed_command_line_.HasSwitch(switches::kMetricsRecordingOnly) || | 1053 if (parsed_command_line_.HasSwitch(switches::kMetricsRecordingOnly) || |
| 1036 parsed_command_line_.HasSwitch(switches::kEnableBenchmarking)) { | 1054 parsed_command_line_.HasSwitch(switches::kEnableBenchmarking)) { |
| 1037 // If we're testing then we don't care what the user preference is, we turn | 1055 // If we're testing then we don't care what the user preference is, we turn |
| 1038 // on recording, but not reporting, otherwise tests fail. | 1056 // on recording, but not reporting, otherwise tests fail. |
| (...skipping 904 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1943 if (base::win::GetVersion() <= base::win::VERSION_XP) | 1961 if (base::win::GetVersion() <= base::win::VERSION_XP) |
| 1944 uma_name += "_XP"; | 1962 uma_name += "_XP"; |
| 1945 | 1963 |
| 1946 uma_name += "_PreRead_"; | 1964 uma_name += "_PreRead_"; |
| 1947 uma_name += pre_read_percentage; | 1965 uma_name += pre_read_percentage; |
| 1948 AddPreReadHistogramTime(uma_name.c_str(), time); | 1966 AddPreReadHistogramTime(uma_name.c_str(), time); |
| 1949 } | 1967 } |
| 1950 #endif | 1968 #endif |
| 1951 #endif | 1969 #endif |
| 1952 } | 1970 } |
| OLD | NEW |