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#ifndef CHROME_COMMON_EXTENSIONS_WEBSTORE_INSTALL_RESULT_H_
6#define CHROME_COMMON_EXTENSIONS_WEBSTORE_INSTALL_RESULT_H_
7
8namespace extensions {
9
10namespace webstore_install {
11
12// Result codes returned by WebstoreStandaloneInstaller and its subclasses.
13// IMPORTANT: Keep this list in sync with both the definition in
14// chrome/common/extensions/api/webstore.json and
15// chrome/common/extensions/api/webstore/webstore_install_constants.cc!
16enum Result {
17  // Successful operation.
18  SUCCESS,
19
20  // Unknown error.
21  OTHER_ERROR,
22
23  // The operation was aborted as the requestor is no longer alive.
24  ABORTED,
25
26  // An installation of the same extension is in progress.
27  INSTALL_IN_PROGRESS,
28
29  // The installation is not permitted.
30  NOT_PERMITTED,
31
32  // Invalid Chrome Web Store item ID.
33  INVALID_ID,
34
35  // Failed to retrieve extension metadata from the Web Store.
36  WEBSTORE_REQUEST_ERROR,
37
38  // The extension metadata retrieved from the Web Store was invalid.
39  INVALID_WEBSTORE_RESPONSE,
40
41  // An error occurred while parsing the extension manifest retrieved from the
42  // Web Store.
43  INVALID_MANIFEST,
44
45  // Failed to retrieve the extension's icon from the Web Store, or the icon
46  // was invalid.
47  ICON_ERROR,
48
49  // The user cancelled the operation.
50  USER_CANCELLED,
51
52  // The extension is blacklisted.
53  BLACKLISTED,
54
55  // Unsatisfied dependencies, such as shared modules.
56  MISSING_DEPENDENCIES,
57
58  // Unsatisfied requirements, such as webgl.
59  REQUIREMENT_VIOLATIONS,
60
61  // The extension is blocked by management policies.
62  BLOCKED_BY_POLICY,
63
64  // The launch feature is not available.
65  LAUNCH_FEATURE_DISABLED,
66
67  // The launch feature is not supported for the extension type.
68  LAUNCH_UNSUPPORTED_EXTENSION_TYPE,
69
70  // A launch of the same extension is in progress.
71  LAUNCH_IN_PROGRESS,
72
73  // The final (and unused) result type for enum verification.
74  // New results should go above this entry, and this entry should be updated.
75  RESULT_LAST = LAUNCH_IN_PROGRESS,
76};
77
78}  // namespace webstore_install
79
80}  // namespace extensions
81
82#endif  // CHROME_COMMON_EXTENSIONS_WEBSTORE_INSTALL_RESULT_H_
83