[Android] Added UMA for search by image context menu.
[chromium-blink-merge.git] / chrome / installer / util / chrome_browser_operations.h
blob573b39aa1f3a8a61029cc8511407357740cca448
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
3 // found in the LICENSE file.
5 #ifndef CHROME_INSTALLER_UTIL_CHROME_BROWSER_OPERATIONS_H_
6 #define CHROME_INSTALLER_UTIL_CHROME_BROWSER_OPERATIONS_H_
8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h"
10 #include "chrome/installer/util/product_operations.h"
12 namespace installer {
14 // Operations specific to Chrome; see ProductOperations for general info.
15 class ChromeBrowserOperations : public ProductOperations {
16 public:
17 ChromeBrowserOperations() {}
19 virtual void ReadOptions(const MasterPreferences& prefs,
20 std::set<string16>* options) const OVERRIDE;
22 virtual void ReadOptions(const CommandLine& uninstall_command,
23 std::set<string16>* options) const OVERRIDE;
25 virtual void AddKeyFiles(
26 const std::set<string16>& options,
27 std::vector<base::FilePath>* key_files) const OVERRIDE;
29 virtual void AddComDllList(
30 const std::set<string16>& options,
31 std::vector<base::FilePath>* com_dll_list) const OVERRIDE;
33 virtual void AppendProductFlags(const std::set<string16>& options,
34 CommandLine* cmd_line) const OVERRIDE;
36 virtual void AppendRenameFlags(const std::set<string16>& options,
37 CommandLine* cmd_line) const OVERRIDE;
39 virtual bool SetChannelFlags(const std::set<string16>& options,
40 bool set,
41 ChannelInfo* channel_info) const OVERRIDE;
43 virtual bool ShouldCreateUninstallEntry(
44 const std::set<string16>& options) const OVERRIDE;
46 virtual void AddDefaultShortcutProperties(
47 BrowserDistribution* dist,
48 const base::FilePath& target_exe,
49 ShellUtil::ShortcutProperties* properties) const OVERRIDE;
51 virtual void LaunchUserExperiment(const base::FilePath& setup_path,
52 const std::set<string16>& options,
53 InstallStatus status,
54 bool system_level) const OVERRIDE;
56 private:
57 DISALLOW_COPY_AND_ASSIGN(ChromeBrowserOperations);
60 } // namespace installer
62 #endif // CHROME_INSTALLER_UTIL_CHROME_BROWSER_OPERATIONS_H_