diff --git a/src/vs/workbench/contrib/userData/browser/userData.contribution.ts b/src/vs/workbench/contrib/userData/browser/userData.contribution.ts index d1c64c8f11a88f97a39786ba2cdf39a7b1f93a9d..02c6bdc3797b8df981472e7cd3e99939b99c0dc0 100644 --- a/src/vs/workbench/contrib/userData/browser/userData.contribution.ts +++ b/src/vs/workbench/contrib/userData/browser/userData.contribution.ts @@ -25,8 +25,6 @@ import { IEditorService } from 'vs/workbench/services/editor/common/editorServic import { ITextFileService } from 'vs/workbench/services/textfile/common/textfiles'; import { Event } from 'vs/base/common/event'; import { IHistoryService } from 'vs/workbench/services/history/common/history'; -import { IFileService } from 'vs/platform/files/common/files'; -import { InMemoryFileSystemProvider } from 'vs/workbench/services/userData/common/inMemoryUserDataProvider'; const CONTEXT_SYNC_STATE = new RawContextKey('syncStatus', SyncStatus.Uninitialized); @@ -49,13 +47,11 @@ Registry.as(ConfigurationExtensions.Configuration) class UserDataSyncContribution extends Disposable implements IWorkbenchContribution { constructor( - @IFileService fileService: IFileService, @IConfigurationService private readonly configurationService: IConfigurationService, @IUserDataSyncService private readonly userDataSyncService: IUserDataSyncService, @IUserDataSyncStoreService private readonly userDataSyncStoreService: IUserDataSyncStoreService, ) { super(); - this._register(fileService.registerProvider(USER_DATA_PREVIEW_SCHEME, new InMemoryFileSystemProvider())); this.sync(true); this._register(Event.any( Event.filter(this.configurationService.onDidChangeConfiguration, e => e.affectsConfiguration('userConfiguration.enableSync') && this.configurationService.getValue('userConfiguration.enableSync')), diff --git a/src/vs/platform/userDataSync/common/settingsSync.ts b/src/vs/workbench/services/userData/common/settingsSync.ts similarity index 98% rename from src/vs/platform/userDataSync/common/settingsSync.ts rename to src/vs/workbench/services/userData/common/settingsSync.ts index ae1174b85831162c04cc123d5693464f2d540000..fee382b9750d00de1eb690ba3baac46c431e0d95 100644 --- a/src/vs/platform/userDataSync/common/settingsSync.ts +++ b/src/vs/workbench/services/userData/common/settingsSync.ts @@ -6,7 +6,7 @@ import { Disposable } from 'vs/base/common/lifecycle'; import { IFileService, FileSystemProviderErrorCode, FileSystemProviderError, IFileContent } from 'vs/platform/files/common/files'; import { IStorageService, StorageScope } from 'vs/platform/storage/common/storage'; -import { IUserData, UserDataSyncStoreError, UserDataSyncStoreErrorCode, ISynchroniser, SyncStatus, ISettingsMergeService, IUserDataSyncStoreService, SETTINGS_PREVIEW_RESOURCE as SETTINGS_CONFLICTS_RESOURCE } from 'vs/platform/userDataSync/common/userDataSync'; +import { IUserData, UserDataSyncStoreError, UserDataSyncStoreErrorCode, ISynchroniser, SyncStatus, ISettingsMergeService, IUserDataSyncStoreService, SETTINGS_PREVIEW_RESOURCE } from 'vs/platform/userDataSync/common/userDataSync'; import { VSBuffer } from 'vs/base/common/buffer'; import { parse, ParseError } from 'vs/base/common/json'; import { localize } from 'vs/nls'; @@ -40,7 +40,7 @@ export class SettingsSynchroniser extends Disposable implements ISynchroniser { private _onDidChangeLocal: Emitter = this._register(new Emitter()); readonly onDidChangeLocal: Event = this._onDidChangeLocal.event; - readonly conflicts: URI = SETTINGS_CONFLICTS_RESOURCE; + readonly conflicts: URI = SETTINGS_PREVIEW_RESOURCE; constructor( @IFileService private readonly fileService: IFileService, diff --git a/src/vs/platform/userDataSync/common/userDataSyncService.ts b/src/vs/workbench/services/userData/common/userDataSyncService.ts similarity index 83% rename from src/vs/platform/userDataSync/common/userDataSyncService.ts rename to src/vs/workbench/services/userData/common/userDataSyncService.ts index 287d971a205a1026123b5cd217ae8c47a03107e9..9a048f2678dce88507cd6294c1ae0c242ff37f82 100644 --- a/src/vs/platform/userDataSync/common/userDataSyncService.ts +++ b/src/vs/workbench/services/userData/common/userDataSyncService.ts @@ -3,12 +3,14 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { IUserDataSyncService, SyncStatus, ISynchroniser, IUserDataSyncStoreService } from 'vs/platform/userDataSync/common/userDataSync'; +import { IUserDataSyncService, SyncStatus, ISynchroniser, USER_DATA_PREVIEW_SCHEME, IUserDataSyncStoreService } from 'vs/platform/userDataSync/common/userDataSync'; import { Disposable } from 'vs/base/common/lifecycle'; +import { registerSingleton } from 'vs/platform/instantiation/common/extensions'; import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; -import { SettingsSynchroniser } from 'vs/platform/userDataSync/common/settingsSync'; +import { SettingsSynchroniser } from 'vs/workbench/services/userData/common/settingsSync'; import { Emitter, Event } from 'vs/base/common/event'; import { IFileService } from 'vs/platform/files/common/files'; +import { InMemoryFileSystemProvider } from 'vs/workbench/services/userData/common/inMemoryUserDataProvider'; import { URI } from 'vs/base/common/uri'; export class UserDataSyncService extends Disposable implements IUserDataSyncService { @@ -30,6 +32,7 @@ export class UserDataSyncService extends Disposable implements IUserDataSyncServ @IInstantiationService private readonly instantiationService: IInstantiationService, ) { super(); + this._register(fileService.registerProvider(USER_DATA_PREVIEW_SCHEME, new InMemoryFileSystemProvider())); this.synchronisers = [ this.instantiationService.createInstance(SettingsSynchroniser) ]; @@ -92,3 +95,5 @@ export class UserDataSyncService extends Disposable implements IUserDataSyncServ } } + +registerSingleton(IUserDataSyncService, UserDataSyncService); diff --git a/src/vs/workbench/workbench.common.main.ts b/src/vs/workbench/workbench.common.main.ts index a8653dce5098d3cf6b01f7f2cb7bd5086da5ddc5..3b9fd5060ff35333c32bf20c5829deb01c7b8483 100644 --- a/src/vs/workbench/workbench.common.main.ts +++ b/src/vs/workbench/workbench.common.main.ts @@ -107,9 +107,8 @@ import { IDownloadService } from 'vs/platform/download/common/download'; import { DownloadService } from 'vs/platform/download/common/downloadService'; import { OpenerService } from 'vs/editor/browser/services/openerService'; import { IOpenerService } from 'vs/platform/opener/common/opener'; -import { IUserDataSyncStoreService, IUserDataSyncService } from 'vs/platform/userDataSync/common/userDataSync'; +import { IUserDataSyncStoreService } from 'vs/platform/userDataSync/common/userDataSync'; import { UserDataSyncStoreService } from 'vs/platform/userDataSync/common/userDataSyncStoreService'; -import { UserDataSyncService } from 'vs/platform/userDataSync/common/userDataSyncService'; registerSingleton(IExtensionGalleryService, ExtensionGalleryService, true); registerSingleton(IContextViewService, ContextViewService, true); @@ -124,7 +123,6 @@ registerSingleton(IMenuService, MenuService, true); registerSingleton(IDownloadService, DownloadService, true); registerSingleton(IOpenerService, OpenerService, true); registerSingleton(IUserDataSyncStoreService, UserDataSyncStoreService); -registerSingleton(IUserDataSyncService, UserDataSyncService); //#endregion