1 // Copyright (c) 2012 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.
5 #ifndef CHROME_BROWSER_EXTENSIONS_CRX_INSTALLER_ERROR_H_
6 #define CHROME_BROWSER_EXTENSIONS_CRX_INSTALLER_ERROR_H_
8 #include "base/strings/string16.h"
10 namespace extensions {
12 // Simple error class for CrxInstaller.
13 class CrxInstallerError {
15 // Typed errors that need to be handled specially by clients.
22 CrxInstallerError() : type_(ERROR_NONE) {
25 explicit CrxInstallerError(const base::string16& message)
26 : type_(message.empty() ? ERROR_NONE : ERROR_OTHER),
30 CrxInstallerError(Type type, const base::string16& message)
31 : type_(type), message_(message) {
34 Type type() const { return type_; }
35 const base::string16& message() const { return message_; }
39 base::string16 message_;
42 } // namespace extensions
44 #endif // CHROME_BROWSER_EXTENSIONS_CRX_INSTALLER_ERROR_H_