Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(231)

Unified Diff: chrome/browser/extensions/extension_warning_service.h

Issue 503033002: Move ExtensionWarningService and ExtensionsWarningSet to extensions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@3_web_view_internal
Patch Set: rebase Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/extension_warning_service.h
diff --git a/chrome/browser/extensions/extension_warning_service.h b/chrome/browser/extensions/extension_warning_service.h
deleted file mode 100644
index c311859dd9202764241591b74d46b96b262fb9de..0000000000000000000000000000000000000000
--- a/chrome/browser/extensions/extension_warning_service.h
+++ /dev/null
@@ -1,96 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_WARNING_SERVICE_H_
-#define CHROME_BROWSER_EXTENSIONS_EXTENSION_WARNING_SERVICE_H_
-
-#include <set>
-#include <string>
-#include <vector>
-
-#include "base/observer_list.h"
-#include "base/scoped_observer.h"
-#include "base/threading/non_thread_safe.h"
-#include "chrome/browser/extensions/extension_warning_set.h"
-#include "extensions/browser/extension_registry_observer.h"
-
-// TODO(battre) Remove the Extension prefix.
-
-class Profile;
-
-namespace content {
-class NotificationDetails;
-class NotificationSource;
-}
-
-namespace extensions {
-
-class ExtensionRegistry;
-
-// Manages a set of warnings caused by extensions. These warnings (e.g.
-// conflicting modifications of network requests by extensions, slow extensions,
-// etc.) trigger a warning badge in the UI and and provide means to resolve
-// them. This class must be used on the UI thread only.
-class ExtensionWarningService : public ExtensionRegistryObserver,
- public base::NonThreadSafe {
- public:
- class Observer {
- public:
- virtual void ExtensionWarningsChanged() = 0;
- };
-
- // |profile| may be NULL for testing. In this case, be sure to not insert
- // any warnings.
- explicit ExtensionWarningService(Profile* profile);
- virtual ~ExtensionWarningService();
-
- // Clears all warnings of types contained in |types| and notifies observers
- // of the changed warnings.
- void ClearWarnings(const std::set<ExtensionWarning::WarningType>& types);
-
- // Returns all types of warnings effecting extension |extension_id|.
- std::set<ExtensionWarning::WarningType> GetWarningTypesAffectingExtension(
- const std::string& extension_id) const;
-
- // Returns all localized warnings for extension |extension_id| in |result|.
- std::vector<std::string> GetWarningMessagesForExtension(
- const std::string& extension_id) const;
-
- const ExtensionWarningSet& warnings() const { return warnings_; }
-
- // Adds a set of warnings and notifies observers if any warning is new.
- void AddWarnings(const ExtensionWarningSet& warnings);
-
- // Notifies the ExtensionWarningService of profile |profile_id| that new
- // |warnings| occurred and triggers a warning badge.
- static void NotifyWarningsOnUI(void* profile_id,
- const ExtensionWarningSet& warnings);
-
- void AddObserver(Observer* observer);
- void RemoveObserver(Observer* observer);
-
- private:
- void NotifyWarningsChanged();
-
- // ExtensionRegistryObserver implementation.
- virtual void OnExtensionUnloaded(content::BrowserContext* browser_context,
- const Extension* extension,
- UnloadedExtensionInfo::Reason reason)
- OVERRIDE;
-
- // Currently existing warnings.
- ExtensionWarningSet warnings_;
-
- Profile* profile_;
-
- // Listen to extension unloaded notifications.
- ScopedObserver<ExtensionRegistry, ExtensionRegistryObserver>
- extension_registry_observer_;
-
- ObserverList<Observer> observer_list_;
-};
-
-} // namespace extensions
-
-#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_WARNING_SERVICE_H_

Powered by Google App Engine
This is Rietveld 408576698