diff options
author | huangs@chromium.org <huangs@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-15 22:49:12 +0000 |
---|---|---|
committer | huangs@chromium.org <huangs@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-15 22:49:12 +0000 |
commit | 899580d4686dbf3d90d1835617ad0cc954d5bca5 (patch) | |
tree | 2238af0fb624f78f1941ae5d574ab7b0167833c7 /chrome/installer/util/chrome_frame_operations.h | |
parent | 6e82aa436518fbbd17702f0abe046ebc5e564bff (diff) | |
download | chromium_src-899580d4686dbf3d90d1835617ad0cc954d5bca5.zip chromium_src-899580d4686dbf3d90d1835617ad0cc954d5bca5.tar.gz chromium_src-899580d4686dbf3d90d1835617ad0cc954d5bca5.tar.bz2 |
Pulling user experiment code from BrowserDistribution to a new class.
This is part #2A of the refactoring task to pull out installation_state from installer_util.
In the old code, code bloat exists is google_chrome_distribution.cc for user experiments. This brings in lots of dependencies, and prevents BrowserDistribution from being a light-weight information (if not constant) getter class.
In this CL we pull:
enum ToastUIflags{}
struct UserExperiment{}
GetExperimentDetails()
LaunchUserExperiment()
InactiveUserToastExperiment()
from BrowserDistribution, and moved into a new class "class UserExperiment", with the following renames:
struct UserExperiment => struct ExperimentDetails
GetExperimentDetails() => CreateExperimentDetails()
The functions are made into static members of UserExperiment. The only use on BrowserDistribution was in InactiveUserToastExperiment(), which now receives it as parameter.
Finally, ShouldSetExperimentLabels() is left with BrowserDistributions, since it is light-weight.
BUG=170398
TBR=ben
Review URL: https://chromiumcodereview.appspot.com/12321061
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@188494 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/installer/util/chrome_frame_operations.h')
-rw-r--r-- | chrome/installer/util/chrome_frame_operations.h | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/chrome/installer/util/chrome_frame_operations.h b/chrome/installer/util/chrome_frame_operations.h index dac2016..5f117c6 100644 --- a/chrome/installer/util/chrome_frame_operations.h +++ b/chrome/installer/util/chrome_frame_operations.h @@ -17,41 +17,44 @@ class ChromeFrameOperations : public ProductOperations { ChromeFrameOperations() {} virtual void ReadOptions(const MasterPreferences& prefs, - std::set<std::wstring>* options) const OVERRIDE; + std::set<string16>* options) const OVERRIDE; virtual void ReadOptions(const CommandLine& uninstall_command, - std::set<std::wstring>* options) const OVERRIDE; + std::set<string16>* options) const OVERRIDE; virtual void AddKeyFiles( - const std::set<std::wstring>& options, + const std::set<string16>& options, std::vector<base::FilePath>* key_files) const OVERRIDE; virtual void AddComDllList( - const std::set<std::wstring>& options, + const std::set<string16>& options, std::vector<base::FilePath>* com_dll_list) const OVERRIDE; - virtual void AppendProductFlags( - const std::set<std::wstring>& options, - CommandLine* cmd_line) const OVERRIDE; + virtual void AppendProductFlags(const std::set<string16>& options, + CommandLine* cmd_line) const OVERRIDE; - virtual void AppendRenameFlags( - const std::set<std::wstring>& options, - CommandLine* cmd_line) const OVERRIDE; + virtual void AppendRenameFlags(const std::set<string16>& options, + CommandLine* cmd_line) const OVERRIDE; - virtual bool SetChannelFlags(const std::set<std::wstring>& options, + virtual bool SetChannelFlags(const std::set<string16>& options, bool set, ChannelInfo* channel_info) const OVERRIDE; virtual bool ShouldCreateUninstallEntry( - const std::set<std::wstring>& options) const OVERRIDE; + const std::set<string16>& options) const OVERRIDE; virtual void AddDefaultShortcutProperties( BrowserDistribution* dist, const base::FilePath& target_exe, ShellUtil::ShortcutProperties* properties) const OVERRIDE; + virtual void LaunchUserExperiment(const base::FilePath& setup_path, + const std::set<string16>& options, + InstallStatus status, + bool system_level) const OVERRIDE; + protected: - void NormalizeOptions(std::set<std::wstring>* options) const; + void NormalizeOptions(std::set<string16>* options) const; private: DISALLOW_COPY_AND_ASSIGN(ChromeFrameOperations); |