179
180
private async writeMachinesData(machinesData: IMachinesData): Promise<void> {
182
>
const ref = await this.userDataSyncStoreService.writeResource(UserDataSyncMachinesService.RESOURCE, content, this.userData?.ref || null);
183
>
this.userData = { ref, content };
184
>
this._onDidChange.fire();
185
>
}
186
187
private async readUserData(manifest?: IUserDataManifest): Promise<IUserData> {
188
if (this.userData) {
190
>
const latestRef = manifest && manifest.latest ? manifest.latest[UserDataSyncMachinesService.RESOURCE] : undefined;
191
>
192
>
// Last time synced resource and latest resource on server are same
193
>
if (this.userData.ref === latestRef) {
194
return this.userData;
195
}
197
>
// There is no resource on server and last time it was synced with no resource
198
>
if (latestRef === undefined && this.userData.content === null) {
199
>
return this.userData;
200
>
}
201
>
}
202
203
return this.userDataSyncStoreService.readResource(UserDataSyncMachinesService.RESOURCE, this.userData);