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

Unified Diff: chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.h

Issue 168253002: Cleanup many APIs to use ProfileKeyedAPI. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 10 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/api/sync_file_system/extension_sync_event_observer.h
diff --git a/chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.h b/chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.h
index 78055eb97814e63f14eb01b70897cfba8b505304..0563807cfa9d6cdb4c2c66f9166a38c11a3e427f 100644
--- a/chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.h
+++ b/chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.h
@@ -9,10 +9,12 @@
#include "base/compiler_specific.h"
#include "base/memory/scoped_ptr.h"
#include "base/values.h"
+#include "chrome/browser/extensions/api/profile_keyed_api_factory.h"
#include "chrome/browser/sync_file_system/sync_event_observer.h"
-#include "components/browser_context_keyed_service/browser_context_keyed_service.h"
-class Profile;
+namespace content {
+class BrowserContext;
+}
namespace sync_file_system {
class SyncFileSystemService;
@@ -21,11 +23,13 @@ class SyncFileSystemService;
namespace extensions {
// Observes changes in SyncFileSystem and relays events to JS Extension API.
-class ExtensionSyncEventObserver
- : public sync_file_system::SyncEventObserver,
- public BrowserContextKeyedService {
+class ExtensionSyncEventObserver : public sync_file_system::SyncEventObserver,
+ public ProfileKeyedAPI {
public:
- explicit ExtensionSyncEventObserver(Profile* profile);
+ static ProfileKeyedAPIFactory<ExtensionSyncEventObserver>*
+ GetFactoryInstance();
+
+ explicit ExtensionSyncEventObserver(content::BrowserContext* context);
virtual ~ExtensionSyncEventObserver();
void InitializeForService(
@@ -47,11 +51,17 @@ class ExtensionSyncEventObserver
sync_file_system::SyncDirection direction) OVERRIDE;
private:
+ friend class ProfileKeyedAPIFactory<ExtensionSyncEventObserver>;
+
// Returns an empty string if the extension |app_origin| cannot be found
// in the installed extension list.
std::string GetExtensionId(const GURL& app_origin);
- Profile* profile_;
+ // ProfileKeyedAPI implementation.
+ static const char* service_name() { return "ExtensionSyncEventObserver"; }
+ static const bool kServiceIsCreatedWithBrowserContext = false;
+
+ content::BrowserContext* browser_context_;
// Not owned. If not null, then this is registered to SyncFileSystemService.
sync_file_system::SyncFileSystemService* sync_service_;
@@ -63,6 +73,10 @@ class ExtensionSyncEventObserver
DISALLOW_COPY_AND_ASSIGN(ExtensionSyncEventObserver);
};
+template <>
+void ProfileKeyedAPIFactory<
+ ExtensionSyncEventObserver>::DeclareFactoryDependencies();
+
} // namespace extensions
#endif // CHROME_BROWSER_EXTENSIONS_API_SYNC_FILE_SYSTEM_EXTENSION_SYNC_EVENT_OBSERVER_H_

Powered by Google App Engine
This is Rietveld 408576698