| Index: sync/api/syncable_service.h
|
| diff --git a/sync/api/syncable_service.h b/sync/api/syncable_service.h
|
| index 13c282ef5a601484bf7a05656a441a33f2e5bb0a..ec2b8b02c614620b048a64c471217f4d49b93a40 100644
|
| --- a/sync/api/syncable_service.h
|
| +++ b/sync/api/syncable_service.h
|
| @@ -7,6 +7,7 @@
|
|
|
| #include <vector>
|
|
|
| +#include "base/callback.h"
|
| #include "base/compiler_specific.h"
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/memory/weak_ptr.h"
|
| @@ -21,6 +22,16 @@ namespace syncer {
|
|
|
| class SyncErrorFactory;
|
|
|
| +// Used as a parameter to InjectStartSyncFlare. The StartSyncFlare is useful
|
| +// when your SyncableService has a need for sync to start ASAP, typically
|
| +// because a local change event has occurred but MergeDataAndStartSyncing
|
| +// hasn't been called yet, meaning you don't have a SyncChangeProcessor.
|
| +// The sync subsystem will respond soon after invoking Run() on your flare
|
| +// by calling MergeDataAndStartSyncing. The ModelType parameter is included so
|
| +// that the recieving end can track usage and timing statistics, make
|
| +// optimizations or tradeoffs by type, etc.
|
| +typedef base::Callback<void(ModelType)> StartSyncFlare;
|
| +
|
| // TODO(zea): remove SupportsWeakPtr in favor of having all SyncableService
|
| // implementers provide a way of getting a weak pointer to themselves.
|
| // See crbug.com/100114.
|
| @@ -28,6 +39,10 @@ class SYNC_EXPORT SyncableService
|
| : public SyncChangeProcessor,
|
| public base::SupportsWeakPtr<SyncableService> {
|
| public:
|
| + // Provides a StartSyncFlare to the SyncableService.
|
| + // TODO(tim): BUG 80194. Make pure virtual.
|
| + virtual void InjectStartSyncFlare(const StartSyncFlare& flare);
|
| +
|
| // Informs the service to begin syncing the specified synced datatype |type|.
|
| // The service should then merge |initial_sync_data| into it's local data,
|
| // calling |sync_processor|'s ProcessSyncChanges as necessary to reconcile the
|
|
|