Index: chrome/browser/component_updater/cld_component_installer.h |
diff --git a/chrome/browser/component_updater/cld_component_installer.h b/chrome/browser/component_updater/cld_component_installer.h |
index 20a4b3c672ba2030f4fe1e9e13e6320479c3dcd4..73f63ee180622d632fc1ecc2fe3cf94e424ec85e 100644 |
--- a/chrome/browser/component_updater/cld_component_installer.h |
+++ b/chrome/browser/component_updater/cld_component_installer.h |
@@ -6,11 +6,50 @@ |
#define CHROME_BROWSER_COMPONENT_UPDATER_CLD_COMPONENT_INSTALLER_H_ |
#include "base/files/file_path.h" |
+#include "base/gtest_prod_util.h" |
+#include "chrome/browser/component_updater/default_component_installer.h" |
namespace component_updater { |
class ComponentUpdateService; |
+// Visible for testing. No need to instantiate this class directly. |
+class CldComponentInstallerTraits : public ComponentInstallerTraits { |
+ public: |
+ CldComponentInstallerTraits(); |
+ virtual ~CldComponentInstallerTraits() {} |
+ |
+ private: |
+ FRIEND_TEST_ALL_PREFIXES(CldComponentInstallerTest, ComponentReady); |
+ FRIEND_TEST_ALL_PREFIXES(CldComponentInstallerTest, GetBaseDirectory); |
+ FRIEND_TEST_ALL_PREFIXES(CldComponentInstallerTest, GetHash); |
+ FRIEND_TEST_ALL_PREFIXES(CldComponentInstallerTest, GetInstalledPath); |
+ FRIEND_TEST_ALL_PREFIXES(CldComponentInstallerTest, GetName); |
+ FRIEND_TEST_ALL_PREFIXES(CldComponentInstallerTest, OnCustomInstall); |
+ FRIEND_TEST_ALL_PREFIXES(CldComponentInstallerTest, SetLatestCldDataFile); |
+ FRIEND_TEST_ALL_PREFIXES(CldComponentInstallerTest, VerifyInstallation); |
+ |
+ // The following methods override ComponentInstallerTraits. |
+ virtual bool CanAutoUpdate() const OVERRIDE; |
+ virtual bool OnCustomInstall(const base::DictionaryValue& manifest, |
+ const base::FilePath& install_dir) OVERRIDE; |
+ virtual bool VerifyInstallation( |
+ const base::FilePath& install_dir) const OVERRIDE; |
+ virtual void ComponentReady( |
+ const base::Version& version, |
+ const base::FilePath& path, |
+ scoped_ptr<base::DictionaryValue> manifest) OVERRIDE; |
+ virtual base::FilePath GetBaseDirectory() const OVERRIDE; |
+ virtual void GetHash(std::vector<uint8>* hash) const OVERRIDE; |
+ virtual std::string GetName() const OVERRIDE; |
+ |
+ base::FilePath GetInstalledPath(const base::FilePath& base) const; |
+ void SetLatestCldDataFile(const base::FilePath& path); |
+ DISALLOW_COPY_AND_ASSIGN(CldComponentInstallerTraits); |
+}; |
+ |
+// Call once during startup to make the component update service aware of |
+// the CLD component. |
void RegisterCldComponent(ComponentUpdateService* cus); |
// Places the path to the latest CLD data file into the specified path object. |