Index: chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.cc |
diff --git a/chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.cc b/chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.cc |
index c5fe516a0038c7c38eb3772f64a83c11f50cf513..5772895150a06f4986f00aa492e0a1428aa65cc7 100644 |
--- a/chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.cc |
+++ b/chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.cc |
@@ -4,16 +4,20 @@ |
#include "chrome/browser/extensions/api/sync_file_system/extension_sync_event_observer.h" |
+#include "base/lazy_instance.h" |
#include "chrome/browser/extensions/api/sync_file_system/sync_file_system_api_helpers.h" |
#include "chrome/browser/extensions/event_names.h" |
#include "chrome/browser/extensions/extension_service.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/sync_file_system/sync_event_observer.h" |
#include "chrome/browser/sync_file_system/sync_file_system_service.h" |
+#include "chrome/browser/sync_file_system/sync_file_system_service_factory.h" |
#include "chrome/browser/sync_file_system/syncable_file_system_util.h" |
#include "chrome/common/extensions/api/sync_file_system.h" |
#include "extensions/browser/event_router.h" |
#include "extensions/browser/extension_system.h" |
+#include "extensions/browser/extension_system_provider.h" |
+#include "extensions/browser/extensions_browser_client.h" |
#include "webkit/browser/fileapi/file_system_url.h" |
#include "webkit/common/fileapi/file_system_util.h" |
@@ -21,6 +25,15 @@ using sync_file_system::SyncEventObserver; |
namespace extensions { |
+static base::LazyInstance<ProfileKeyedAPIFactory<ExtensionSyncEventObserver> > |
+ g_factory = LAZY_INSTANCE_INITIALIZER; |
+ |
+// static |
+ProfileKeyedAPIFactory<ExtensionSyncEventObserver>* |
+ExtensionSyncEventObserver::GetFactoryInstance() { |
+ return g_factory.Pointer(); |
+} |
+ |
ExtensionSyncEventObserver::ExtensionSyncEventObserver( |
Profile* profile) |
: profile_(profile), |
@@ -126,4 +139,11 @@ void ExtensionSyncEventObserver::BroadcastOrDispatchEvent( |
event_router->DispatchEventToExtension(extension_id, event.Pass()); |
} |
+template <> |
+void ProfileKeyedAPIFactory< |
+ ExtensionSyncEventObserver>::DeclareFactoryDependencies() { |
+ DependsOn(sync_file_system::SyncFileSystemServiceFactory::GetInstance()); |
+ DependsOn(ExtensionsBrowserClient::Get()->GetExtensionSystemFactory()); |
+} |
+ |
} // namespace extensions |