chrome_browser_operations.h revision a1401311d1ab56c4ed0a474bd38c108f75cb0cd9
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. 4 5#ifndef CHROME_INSTALLER_UTIL_CHROME_BROWSER_OPERATIONS_H_ 6#define CHROME_INSTALLER_UTIL_CHROME_BROWSER_OPERATIONS_H_ 7 8#include "base/basictypes.h" 9#include "base/compiler_specific.h" 10#include "chrome/installer/util/product_operations.h" 11 12namespace installer { 13 14// Operations specific to Chrome; see ProductOperations for general info. 15class ChromeBrowserOperations : public ProductOperations { 16 public: 17 ChromeBrowserOperations() {} 18 19 virtual void ReadOptions(const MasterPreferences& prefs, 20 std::set<base::string16>* options) const OVERRIDE; 21 22 virtual void ReadOptions(const base::CommandLine& uninstall_command, 23 std::set<base::string16>* options) const OVERRIDE; 24 25 virtual void AddKeyFiles( 26 const std::set<base::string16>& options, 27 std::vector<base::FilePath>* key_files) const OVERRIDE; 28 29 virtual void AddComDllList( 30 const std::set<base::string16>& options, 31 std::vector<base::FilePath>* com_dll_list) const OVERRIDE; 32 33 virtual void AppendProductFlags(const std::set<base::string16>& options, 34 base::CommandLine* cmd_line) const OVERRIDE; 35 36 virtual void AppendRenameFlags(const std::set<base::string16>& options, 37 base::CommandLine* cmd_line) const OVERRIDE; 38 39 virtual bool SetChannelFlags(const std::set<base::string16>& options, 40 bool set, 41 ChannelInfo* channel_info) const OVERRIDE; 42 43 virtual bool ShouldCreateUninstallEntry( 44 const std::set<base::string16>& options) const OVERRIDE; 45 46 virtual void AddDefaultShortcutProperties( 47 BrowserDistribution* dist, 48 const base::FilePath& target_exe, 49 ShellUtil::ShortcutProperties* properties) const OVERRIDE; 50 51 virtual void LaunchUserExperiment(const base::FilePath& setup_path, 52 const std::set<base::string16>& options, 53 InstallStatus status, 54 bool system_level) const OVERRIDE; 55 56 private: 57 DISALLOW_COPY_AND_ASSIGN(ChromeBrowserOperations); 58}; 59 60} // namespace installer 61 62#endif // CHROME_INSTALLER_UTIL_CHROME_BROWSER_OPERATIONS_H_ 63