| Index: trunk/src/chrome/browser/chromeos/drive/drive_system_service.h
|
| ===================================================================
|
| --- trunk/src/chrome/browser/chromeos/drive/drive_system_service.h (revision 195487)
|
| +++ trunk/src/chrome/browser/chromeos/drive/drive_system_service.h (working copy)
|
| @@ -16,9 +16,9 @@
|
| #include "chrome/browser/chromeos/drive/drive_file_error.h"
|
| #include "chrome/browser/chromeos/drive/drive_file_system_util.h"
|
| #include "chrome/browser/chromeos/drive/drive_scheduler.h"
|
| -#include "chrome/browser/google_apis/drive_notification_observer.h"
|
| #include "chrome/browser/profiles/profile_keyed_service.h"
|
| #include "chrome/browser/profiles/profile_keyed_service_factory.h"
|
| +#include "sync/notifier/invalidation_handler.h"
|
|
|
| namespace base {
|
| class FilePath;
|
| @@ -65,9 +65,8 @@
|
| // The class is essentially a container that manages lifetime of the objects
|
| // that are used to run the Drive system. The DriveSystemService object is
|
| // created per-profile.
|
| -class DriveSystemService
|
| - : public ProfileKeyedService,
|
| - public google_apis::DriveNotificationObserver {
|
| +class DriveSystemService : public ProfileKeyedService,
|
| + public syncer::InvalidationHandler {
|
| public:
|
| // test_drive_service, test_cache_root and test_file_system are used by tests
|
| // to inject customized instances.
|
| @@ -89,9 +88,6 @@
|
| void AddObserver(DriveSystemServiceObserver* observer);
|
| void RemoveObserver(DriveSystemServiceObserver* observer);
|
|
|
| - // google_apis::DriveNotificationObserver implementation.
|
| - virtual void OnNotificationReceived() OVERRIDE;
|
| -
|
| google_apis::DriveServiceInterface* drive_service() {
|
| return drive_service_.get();
|
| }
|
| @@ -114,7 +110,16 @@
|
| // Reloads and remounts the file system.
|
| void ReloadAndRemountFileSystem();
|
|
|
| + // Returns true if the push notification is enabled.
|
| + bool PushNotificationEnabled();
|
| +
|
| private:
|
| + // syncer::InvalidationHandler implementation.
|
| + virtual void OnInvalidatorStateChange(
|
| + syncer::InvalidatorState state) OVERRIDE;
|
| + virtual void OnIncomingInvalidation(
|
| + const syncer::ObjectIdInvalidationMap& invalidation_map) OVERRIDE;
|
| +
|
| // Returns true if Drive is enabled.
|
| // Must be called on UI thread.
|
| bool IsDriveEnabled();
|
| @@ -154,6 +159,9 @@
|
| // True if Drive is disabled due to initialization errors.
|
| bool drive_disabled_;
|
|
|
| + // True once this is registered to listen to the Drive updates.
|
| + bool push_notification_registered_;
|
| +
|
| scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_;
|
| scoped_ptr<EventLogger> event_logger_;
|
| scoped_ptr<DriveCache, util::DestroyHelper> cache_;
|
|
|