1// Copyright 2014 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#include "chrome/common/extensions/api/webstore/webstore_api_constants.h"
6
7#include "base/macros.h"
8#include "chrome/common/extensions/webstore_install_result.h"
9
10namespace extensions {
11namespace api {
12namespace webstore {
13
14// IMPORTANT: Keep this list in sync with both the definition in
15// chrome/common/extensions/api/webstore.json and
16// chrome/common/extensions/webstore_install_result.h!
17const char* kInstallResultCodes[] = {
18  "success",
19  "otherError",
20  "aborted",
21  "installInProgress",
22  "notPermitted",
23  "invalidId",
24  "webstoreRequestError",
25  "invalidWebstoreResponse",
26  "invalidManifest",
27  "iconError",
28  "userCancelled",
29  "blacklisted",
30  "missingDependencies",
31  "requirementViolations",
32  "blockedByPolicy",
33  "launchFeatureDisabled",
34  "launchUnsupportedExtensionType",
35  "launchInProgress",
36};
37
38COMPILE_ASSERT(arraysize(kInstallResultCodes) ==
39                   webstore_install::RESULT_LAST + 1,
40               must_keep_webstore_install_result_and_api_constants_in_sync);
41
42// The "downloading" stage begins when the installer starts downloading modules
43// for the extension.
44const char kInstallStageDownloading[] = "downloading";
45
46// The "installing" stage begins once all downloads are complete, and the
47// CrxInstaller begins.
48const char kInstallStageInstalling[] = "installing";
49
50// The method in custom_webstore_bindings.js triggered when we enter a new
51// install stage ("downloading" or "installing").
52const char kOnInstallStageChangedMethodName[] = "onInstallStageChanged";
53
54// The method in custom_webstore_bindings.js triggered when we update
55// download progress.
56const char kOnDownloadProgressMethodName[] = "onDownloadProgress";
57
58}  // namespace webstore
59}  // namespace api
60}  // namespace extensions
61