chrome_app_host_distribution.h revision 1e9bf3e0803691d0a228da41fc608347b6db4340
1dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong// Copyright (c) 2012 The Chromium Authors. All rights reserved. 2dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong// Use of this source code is governed by a BSD-style license that can be 3dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong// found in the LICENSE file. 4dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong// 5dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong// This file extends the browser distribution with a specific implementation 6dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong// for Chrome AppHost. 7dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 8dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong#ifndef CHROME_INSTALLER_UTIL_CHROME_APP_HOST_DISTRIBUTION_H_ 9dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong#define CHROME_INSTALLER_UTIL_CHROME_APP_HOST_DISTRIBUTION_H_ 10dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 11dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong#include "chrome/installer/util/browser_distribution.h" 12dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong#include "chrome/installer/util/util_constants.h" 13dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 14dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dongclass ChromeAppHostDistribution : public BrowserDistribution { 15dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong public: 16dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetAppGuid() OVERRIDE; 17dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 18dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetDisplayName() OVERRIDE; 19dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 20dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetBrowserProgIdPrefix() OVERRIDE; 21dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 22dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetBrowserProgIdDesc() OVERRIDE; 23dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 24dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong // This can only be called with SHORTCUT_APP_LAUNCHER for |shortcut_type|. 25dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetShortcutName(ShortcutType shortcut_type) OVERRIDE; 26dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 27dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetIconFilename() OVERRIDE; 28dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 29dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetBaseAppName() OVERRIDE; 30dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 31dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetBaseAppId() OVERRIDE; 32dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 33dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetInstallSubDir() OVERRIDE; 34dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 35dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetPublisherName() OVERRIDE; 36dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 373856b090cd04ba5dd4a59a12430ed724d5995909Steve Block virtual string16 GetAppDescription() OVERRIDE; 38dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 397fc9a6fdf146ded90b51c52f4a05d797294dcb85Glenn Kasten virtual string16 GetLongAppDescription() OVERRIDE; 40dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 41dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual std::string GetSafeBrowsingName() OVERRIDE; 42dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 43dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetStateKey() OVERRIDE; 44dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 45dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetStateMediumKey() OVERRIDE; 46e53b9ead781c36e96d6b6f012ddffc93a3d80f0dGlenn Kasten 47e53b9ead781c36e96d6b6f012ddffc93a3d80f0dGlenn Kasten virtual std::string GetNetworkStatsServer() const OVERRIDE; 48e53b9ead781c36e96d6b6f012ddffc93a3d80f0dGlenn Kasten 49e53b9ead781c36e96d6b6f012ddffc93a3d80f0dGlenn Kasten virtual std::string GetHttpPipeliningTestServer() const OVERRIDE; 50dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 51dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual string16 GetUninstallLinkName() OVERRIDE; 527c027248e1a4ccd5b22bc4deafb03e2d87ac8f38Glenn Kasten 537c027248e1a4ccd5b22bc4deafb03e2d87ac8f38Glenn Kasten virtual string16 GetUninstallRegPath() OVERRIDE; 547c027248e1a4ccd5b22bc4deafb03e2d87ac8f38Glenn Kasten 557c027248e1a4ccd5b22bc4deafb03e2d87ac8f38Glenn Kasten virtual string16 GetVersionKey() OVERRIDE; 56dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 5729357bc2c0dd7c43ad3bd0c8e3efa4e6fd9bfd47Steve Block virtual DefaultBrowserControlPolicy GetDefaultBrowserControlPolicy() OVERRIDE; 58dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 59dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual bool CanCreateDesktopShortcuts() OVERRIDE; 60dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 61dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong virtual bool GetCommandExecuteImplClsid( 62dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong string16* handler_class_uuid) OVERRIDE; 63dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 643856b090cd04ba5dd4a59a12430ed724d5995909Steve Block virtual void UpdateInstallStatus(bool system_install, 65dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong installer::ArchiveType archive_type, 66dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong installer::InstallStatus install_status) OVERRIDE; 67dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 68dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong protected: 69dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong friend class BrowserDistribution; 70dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 71dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong // Disallow construction from non-friends. 723856b090cd04ba5dd4a59a12430ed724d5995909Steve Block ChromeAppHostDistribution(); 73dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong}; 74dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong 75dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong#endif // CHROME_INSTALLER_UTIL_CHROME_APP_HOST_DISTRIBUTION_H_ 76dd172fce75b2a1c3cb3a5d3b3bbb5020b1ae8675James Dong