Index: chrome/browser/extensions/extension_error_reporter.h |
diff --git a/chrome/browser/extensions/extension_error_reporter.h b/chrome/browser/extensions/extension_error_reporter.h |
index ccc188754651c540defdefd89cac9986fda148f4..7c7d919be5264386844d16dc986a31600ca66bcb 100644 |
--- a/chrome/browser/extensions/extension_error_reporter.h |
+++ b/chrome/browser/extensions/extension_error_reporter.h |
@@ -8,6 +8,7 @@ |
#include <string> |
#include <vector> |
+#include "base/observer_list.h" |
#include "base/strings/string16.h" |
namespace base { |
@@ -16,6 +17,7 @@ class FilePath; |
} |
class Profile; |
+class ExtensionErrorReporterObserver; |
// Exposes an easy way for the various components of the extension system to |
// report errors. This is a singleton that lives on the UI thread, with the |
@@ -27,6 +29,13 @@ class Profile; |
// report errors that are specific to a particular extension. |
class ExtensionErrorReporter { |
public: |
+ class ExtensionErrorReporterObserver { |
Devlin
2014/06/25 19:49:36
Since any other classes will prefix this by Extens
|
+ public: |
+ virtual ~ExtensionErrorReporterObserver() {} |
+ |
+ virtual void OnLoadFailure(const base::FilePath& extension_path, |
+ const std::string& error) = 0; |
+ }; |
Devlin
2014/06/25 19:49:36
nit: newline after class declaration.
|
// Initializes the error reporter. Must be called before any other methods |
// and on the UI thread. |
static void Init(bool enable_noisy_errors); |
@@ -54,6 +63,9 @@ class ExtensionErrorReporter { |
// Clear the list of errors reported so far. |
void ClearErrors(); |
+ void AddObserver(ExtensionErrorReporterObserver* observer); |
+ void RemoveObserver(ExtensionErrorReporterObserver* observer); |
+ |
private: |
static ExtensionErrorReporter* instance_; |
@@ -63,6 +75,8 @@ class ExtensionErrorReporter { |
base::MessageLoop* ui_loop_; |
std::vector<base::string16> errors_; |
bool enable_noisy_errors_; |
+ |
+ ObserverList<ExtensionErrorReporterObserver> observers_; |
}; |
#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_ERROR_REPORTER_H_ |