From 0013ac60d78383b39d5f54f48a3bdb5f849c93ee Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Fri, 15 Jun 2018 00:08:53 +0200 Subject: [PATCH] Move uri transformer to uriIpc.ts file --- src/vs/base/common/uriIpc.ts | 18 ++++++++++++++++++ src/vs/base/parts/ipc/common/ipc.ts | 11 ----------- .../common/extensionManagementIpc.ts | 6 ++++-- src/vs/workbench/electron-browser/shell.ts | 3 ++- .../services/extensions/node/rpcProtocol.ts | 3 ++- 5 files changed, 26 insertions(+), 15 deletions(-) create mode 100644 src/vs/base/common/uriIpc.ts diff --git a/src/vs/base/common/uriIpc.ts b/src/vs/base/common/uriIpc.ts new file mode 100644 index 00000000000..ad252fdd31c --- /dev/null +++ b/src/vs/base/common/uriIpc.ts @@ -0,0 +1,18 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +'use strict'; + +import URI, { UriComponents } from 'vs/base/common/uri'; + +export interface IURITransformer { + transformIncoming(uri: UriComponents): UriComponents; + transformOutgoing(uri: URI): URI; +} + +export const DefaultURITransformer: IURITransformer = { + transformIncoming: (uri: UriComponents) => uri, + transformOutgoing: (uri: URI) => uri, +}; \ No newline at end of file diff --git a/src/vs/base/parts/ipc/common/ipc.ts b/src/vs/base/parts/ipc/common/ipc.ts index 5ebad2ea791..a3985361b63 100644 --- a/src/vs/base/parts/ipc/common/ipc.ts +++ b/src/vs/base/parts/ipc/common/ipc.ts @@ -8,17 +8,6 @@ import { Promise, TPromise } from 'vs/base/common/winjs.base'; import { IDisposable, toDisposable } from 'vs/base/common/lifecycle'; import { Event, Emitter, once, filterEvent } from 'vs/base/common/event'; -import URI, { UriComponents } from 'vs/base/common/uri'; - -export interface IURITransformer { - transformIncoming(uri: UriComponents): UriComponents; - transformOutgoing(uri: URI): URI; -} - -export const DefaultURITransformer: IURITransformer = { - transformIncoming: (uri: UriComponents) => uri, - transformOutgoing: (uri: URI) => URI.revive(uri), -}; enum MessageType { RequestCommon, diff --git a/src/vs/platform/extensionManagement/common/extensionManagementIpc.ts b/src/vs/platform/extensionManagement/common/extensionManagementIpc.ts index 0b5ecd87d22..e865bc62ff6 100644 --- a/src/vs/platform/extensionManagement/common/extensionManagementIpc.ts +++ b/src/vs/platform/extensionManagement/common/extensionManagementIpc.ts @@ -6,9 +6,11 @@ 'use strict'; import { TPromise } from 'vs/base/common/winjs.base'; -import { IChannel, eventToCall, eventFromCall, IURITransformer } from 'vs/base/parts/ipc/common/ipc'; +import { IChannel, eventToCall, eventFromCall } from 'vs/base/parts/ipc/common/ipc'; import { IExtensionManagementService, ILocalExtension, InstallExtensionEvent, DidInstallExtensionEvent, IGalleryExtension, LocalExtensionType, DidUninstallExtensionEvent, IExtensionIdentifier, IGalleryMetadata, IReportedExtension } from './extensionManagement'; import { Event, buffer } from 'vs/base/common/event'; +import URI from 'vs/base/common/uri'; +import { IURITransformer } from 'vs/base/common/uriIpc'; export interface IExtensionManagementChannel extends IChannel { call(command: 'event:onInstallExtension'): TPromise; @@ -108,7 +110,7 @@ export class ExtensionManagementChannelClient implements IExtensionManagementSer } private _transform(extension: ILocalExtension): ILocalExtension { - return { ...extension, ...{ location: this.uriTransformer.transformOutgoing(extension.location) } }; + return { ...extension, ...{ location: URI.revive(this.uriTransformer.transformIncoming(extension.location)) } }; } } \ No newline at end of file diff --git a/src/vs/workbench/electron-browser/shell.ts b/src/vs/workbench/electron-browser/shell.ts index 6a70ca6751e..79bff5a5820 100644 --- a/src/vs/workbench/electron-browser/shell.ts +++ b/src/vs/workbench/electron-browser/shell.ts @@ -60,8 +60,9 @@ import { WorkbenchModeServiceImpl } from 'vs/workbench/services/mode/common/work import { IModeService } from 'vs/editor/common/services/modeService'; import { IUntitledEditorService, UntitledEditorService } from 'vs/workbench/services/untitled/common/untitledEditorService'; import { ICrashReporterService, NullCrashReporterService, CrashReporterService } from 'vs/workbench/services/crashReporter/electron-browser/crashReporterService'; -import { getDelayedChannel, IPCClient, DefaultURITransformer } from 'vs/base/parts/ipc/common/ipc'; +import { getDelayedChannel, IPCClient } from 'vs/base/parts/ipc/common/ipc'; import { connect as connectNet } from 'vs/base/parts/ipc/node/ipc.net'; +import { DefaultURITransformer } from 'vs/base/common/uriIpc'; import { IExtensionManagementChannel, ExtensionManagementChannelClient } from 'vs/platform/extensionManagement/common/extensionManagementIpc'; import { IExtensionManagementService, IExtensionEnablementService } from 'vs/platform/extensionManagement/common/extensionManagement'; import { ExtensionEnablementService } from 'vs/platform/extensionManagement/common/extensionEnablementService'; diff --git a/src/vs/workbench/services/extensions/node/rpcProtocol.ts b/src/vs/workbench/services/extensions/node/rpcProtocol.ts index f2d7858de7e..6c38a0bbe90 100644 --- a/src/vs/workbench/services/extensions/node/rpcProtocol.ts +++ b/src/vs/workbench/services/extensions/node/rpcProtocol.ts @@ -6,12 +6,13 @@ import { TPromise } from 'vs/base/common/winjs.base'; import * as errors from 'vs/base/common/errors'; -import { IMessagePassingProtocol, IURITransformer } from 'vs/base/parts/ipc/common/ipc'; +import { IMessagePassingProtocol } from 'vs/base/parts/ipc/common/ipc'; import { LazyPromise } from 'vs/workbench/services/extensions/node/lazyPromise'; import { ProxyIdentifier, IRPCProtocol } from 'vs/workbench/services/extensions/node/proxyIdentifier'; import { CharCode } from 'vs/base/common/charCode'; import URI from 'vs/base/common/uri'; import { MarshalledObject } from 'vs/base/common/marshalling'; +import { IURITransformer } from 'vs/base/common/uriIpc'; declare var Proxy: any; // TODO@TypeScript -- GitLab