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 #ifndef CHROME_INSTALLER_UTIL_PRODUCT_OPERATIONS_H_ | 5 #ifndef CHROME_INSTALLER_UTIL_PRODUCT_OPERATIONS_H_ |
6 #define CHROME_INSTALLER_UTIL_PRODUCT_OPERATIONS_H_ | 6 #define CHROME_INSTALLER_UTIL_PRODUCT_OPERATIONS_H_ |
7 | 7 |
8 #include <set> | 8 #include <set> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
11 | 11 |
12 #include "base/files/file_path.h" | 12 #include "base/files/file_path.h" |
13 #include "chrome/installer/util/shell_util.h" | 13 #include "chrome/installer/util/shell_util.h" |
| 14 #include "chrome/installer/util/util_constants.h" |
14 | 15 |
15 class BrowserDistribution; | 16 class BrowserDistribution; |
16 class CommandLine; | 17 class CommandLine; |
17 | 18 |
18 namespace installer { | 19 namespace installer { |
19 | 20 |
20 class ChannelInfo; | 21 class ChannelInfo; |
21 class MasterPreferences; | 22 class MasterPreferences; |
22 | 23 |
23 // An interface to product-specific operations that depend on product | 24 // An interface to product-specific operations that depend on product |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 // MSI; see InstallerState::is_msi. | 75 // MSI; see InstallerState::is_msi. |
75 virtual bool ShouldCreateUninstallEntry( | 76 virtual bool ShouldCreateUninstallEntry( |
76 const std::set<std::wstring>& options) const = 0; | 77 const std::set<std::wstring>& options) const = 0; |
77 | 78 |
78 // Modifies a ShellUtil::ShortcutProperties object by assigning default values | 79 // Modifies a ShellUtil::ShortcutProperties object by assigning default values |
79 // to unintialized members. | 80 // to unintialized members. |
80 virtual void AddDefaultShortcutProperties( | 81 virtual void AddDefaultShortcutProperties( |
81 BrowserDistribution* dist, | 82 BrowserDistribution* dist, |
82 const base::FilePath& target_exe, | 83 const base::FilePath& target_exe, |
83 ShellUtil::ShortcutProperties* properties) const = 0; | 84 ShellUtil::ShortcutProperties* properties) const = 0; |
| 85 |
| 86 // After an install or upgrade the user might qualify to participate in an |
| 87 // experiment. This function determines if the user qualifies and if so it |
| 88 // sets the wheels in motion or in simple cases does the experiment itself. |
| 89 virtual void LaunchUserExperiment(const base::FilePath& setup_path, |
| 90 const std::set<std::wstring>& options, |
| 91 BrowserDistribution* dist, |
| 92 InstallStatus status, |
| 93 bool system_level) const = 0; |
84 }; | 94 }; |
85 | 95 |
86 } // namespace installer | 96 } // namespace installer |
87 | 97 |
88 #endif // CHROME_INSTALLER_UTIL_PRODUCT_OPERATIONS_H_ | 98 #endif // CHROME_INSTALLER_UTIL_PRODUCT_OPERATIONS_H_ |
OLD | NEW |