Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(423)

Unified Diff: chrome/installer/util/installation_validator.h

Issue 10665002: Implement installation of the Chrome App Host. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix unittests. Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/installer/util/installation_validator.h
diff --git a/chrome/installer/util/installation_validator.h b/chrome/installer/util/installation_validator.h
index ee8cc1c86fee3a419fafbe09d9315e010a927135..f19de64df524def5895762c589cf65d1d1067b0e 100644
--- a/chrome/installer/util/installation_validator.h
+++ b/chrome/installer/util/installation_validator.h
@@ -36,6 +36,7 @@ class InstallationValidator {
CHROME_FRAME_SINGLE = 0x04,
CHROME_FRAME_MULTI = 0x08,
CHROME_FRAME_READY_MODE = 0x10,
+ CHROME_APP_HOST = 0x20,
};
}; // class ProductBits
@@ -58,6 +59,23 @@ class InstallationValidator {
ProductBits::CHROME_FRAME_MULTI | ProductBits::CHROME_MULTI,
CHROME_FRAME_READY_MODE_CHROME_MULTI =
ProductBits::CHROME_FRAME_READY_MODE | ProductBits::CHROME_MULTI,
+ CHROME_APP_HOST =
+ ProductBits::CHROME_APP_HOST,
+ CHROME_APP_HOST_CHROME_FRAME_SINGLE =
+ ProductBits::CHROME_APP_HOST | ProductBits::CHROME_FRAME_SINGLE,
+ CHROME_APP_HOST_CHROME_FRAME_SINGLE_CHROME_MULTI =
+ ProductBits::CHROME_APP_HOST | ProductBits::CHROME_FRAME_SINGLE |
+ ProductBits::CHROME_MULTI,
+ CHROME_APP_HOST_CHROME_FRAME_MULTI =
+ ProductBits::CHROME_APP_HOST | ProductBits::CHROME_FRAME_MULTI,
+ CHROME_APP_HOST_CHROME_FRAME_MULTI_CHROME_MULTI =
+ ProductBits::CHROME_APP_HOST | ProductBits::CHROME_FRAME_MULTI |
+ ProductBits::CHROME_MULTI,
+ CHROME_APP_HOST_CHROME_MULTI =
+ ProductBits::CHROME_APP_HOST | ProductBits::CHROME_MULTI,
+ CHROME_APP_HOST_CHROME_MULTI_CHROME_FRAME_READY_MODE =
+ ProductBits::CHROME_APP_HOST | ProductBits::CHROME_MULTI |
+ ProductBits::CHROME_FRAME_READY_MODE,
};
// Validates |machine_state| at user or system level, returning true if valid.
@@ -136,6 +154,24 @@ class InstallationValidator {
const ProductState& product_state) const OVERRIDE;
};
+ // Validation rules for Chrome App Host.
+ class ChromeAppHostRules : public ProductRules {
+ public:
+ virtual BrowserDistribution::Type distribution_type() const OVERRIDE;
+ virtual void AddUninstallSwitchExpectations(
+ const InstallationState& machine_state,
+ bool system_install,
+ const ProductState& product_state,
+ SwitchExpectations* expectations) const OVERRIDE;
+ virtual void AddRenameSwitchExpectations(
+ const InstallationState& machine_state,
+ bool system_install,
+ const ProductState& product_state,
+ SwitchExpectations* expectations) const OVERRIDE;
+ virtual bool UsageStatsAllowed(
+ const ProductState& product_state) const OVERRIDE;
+ };
+
// Validation rules for the multi-install Chrome binaries.
class ChromeBinariesRules : public ProductRules {
public:
@@ -162,9 +198,17 @@ class InstallationValidator {
const ProductRules& rules;
};
+ static void ValidateInstallAppCommand(const ProductContext& ctx,
+ const AppCommand& command,
+ bool* is_valid);
static void ValidateQuickEnableCfCommand(const ProductContext& ctx,
const AppCommand& command,
bool* is_valid);
+ static void ValidateQuickEnableApplicationHostCommand(
+ const ProductContext& ctx,
+ const AppCommand& command,
+ bool* is_valid);
+
static void ValidateAppCommandExpectations(
const ProductContext& ctx,
const CommandExpectations& expectations,

Powered by Google App Engine
This is Rietveld 408576698