refactor sync to reflect preview, merge, accept & apply.

This commit is contained in:
Sandeep Somavarapu
2020-07-26 22:15:23 +02:00
parent e2de23c683
commit 8ca1cf6293
18 changed files with 657 additions and 991 deletions

View File

@@ -594,7 +594,7 @@ class UserDataSyncPreview extends Disposable implements IUserDataSyncPreview {
this.updateResources();
}
async accept(syncResource: SyncResource, resource: URI, content: string | null): Promise<void> {
async accept(syncResource: SyncResource, resource: URI, content?: string | null): Promise<void> {
if (this.manualSync) {
const syncPreview = await this.manualSync.task.accept(resource, content);
this.updatePreview(syncPreview);

View File

@@ -20,7 +20,7 @@ export interface IUserDataSyncPreview {
readonly onDidChangeResources: Event<ReadonlyArray<IUserDataSyncResource>>;
readonly resources: ReadonlyArray<IUserDataSyncResource>;
accept(syncResource: SyncResource, resource: URI, content: string | null): Promise<void>;
accept(syncResource: SyncResource, resource: URI, content?: string | null): Promise<void>;
merge(resource?: URI): Promise<void>;
discard(resource?: URI): Promise<void>;
pull(): Promise<void>;

View File

@@ -65,10 +65,6 @@ export class UserDataSyncService extends Disposable implements IUserDataSyncServ
this._register(this.channel.listen<[SyncResource, Error][]>('onSyncErrors')(errors => this._onSyncErrors.fire(errors.map(([source, error]) => ([source, UserDataSyncError.toUserDataSyncError(error)])))));
}
pull(): Promise<void> {
return this.channel.call('pull');
}
createSyncTask(): Promise<ISyncTask> {
throw new Error('not supported');
}
@@ -186,7 +182,7 @@ class ManualSyncTask implements IManualSyncTask {
return this.deserializePreviews(previews);
}
async accept(resource: URI, content: string | null): Promise<[SyncResource, ISyncResourcePreview][]> {
async accept(resource: URI, content?: string | null): Promise<[SyncResource, ISyncResourcePreview][]> {
const previews = await this.channel.call<[SyncResource, ISyncResourcePreview][]>('accept', [resource, content]);
return this.deserializePreviews(previews);
}