OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/google_apis/drive_notification_manager_factory.h" | 5 #include "chrome/browser/google_apis/drive_notification_manager_factory.h" |
6 | 6 |
7 #include "chrome/browser/google_apis/drive_notification_manager.h" | 7 #include "chrome/browser/google_apis/drive_notification_manager.h" |
8 #include "chrome/browser/profiles/profile_dependency_manager.h" | 8 #include "chrome/browser/profiles/profile_dependency_manager.h" |
| 9 #include "chrome/browser/sync/profile_sync_service.h" |
9 #include "chrome/browser/sync/profile_sync_service_factory.h" | 10 #include "chrome/browser/sync/profile_sync_service_factory.h" |
10 | 11 |
11 namespace google_apis { | 12 namespace google_apis { |
12 | 13 |
13 // static | 14 // static |
14 DriveNotificationManager* | 15 DriveNotificationManager* |
15 DriveNotificationManagerFactory::GetForProfile(Profile* profile) { | 16 DriveNotificationManagerFactory::GetForProfile(Profile* profile) { |
| 17 if (!ProfileSyncService::IsSyncEnabled()) |
| 18 return NULL; |
| 19 |
16 return static_cast<DriveNotificationManager*>( | 20 return static_cast<DriveNotificationManager*>( |
17 GetInstance()->GetServiceForProfile(profile, true)); | 21 GetInstance()->GetServiceForProfile(profile, true)); |
18 } | 22 } |
19 | 23 |
20 // static | 24 // static |
21 DriveNotificationManagerFactory* | 25 DriveNotificationManagerFactory* |
22 DriveNotificationManagerFactory::GetInstance() { | 26 DriveNotificationManagerFactory::GetInstance() { |
23 return Singleton<DriveNotificationManagerFactory>::get(); | 27 return Singleton<DriveNotificationManagerFactory>::get(); |
24 } | 28 } |
25 | 29 |
26 DriveNotificationManagerFactory::DriveNotificationManagerFactory() | 30 DriveNotificationManagerFactory::DriveNotificationManagerFactory() |
27 : ProfileKeyedServiceFactory("DriveNotificationManager", | 31 : ProfileKeyedServiceFactory("DriveNotificationManager", |
28 ProfileDependencyManager::GetInstance()) { | 32 ProfileDependencyManager::GetInstance()) { |
29 DependsOn(ProfileSyncServiceFactory::GetInstance()); | 33 DependsOn(ProfileSyncServiceFactory::GetInstance()); |
30 } | 34 } |
31 | 35 |
32 DriveNotificationManagerFactory::~DriveNotificationManagerFactory() {} | 36 DriveNotificationManagerFactory::~DriveNotificationManagerFactory() {} |
33 | 37 |
34 ProfileKeyedService* DriveNotificationManagerFactory::BuildServiceInstanceFor( | 38 ProfileKeyedService* DriveNotificationManagerFactory::BuildServiceInstanceFor( |
35 Profile* profile) const { | 39 Profile* profile) const { |
36 return new DriveNotificationManager(profile); | 40 return new DriveNotificationManager(profile); |
37 } | 41 } |
38 | 42 |
39 } // namespace google_apis | 43 } // namespace google_apis |
OLD | NEW |