From 6fd4b5eaf26c75c45ad0ecf9af6df2faeae87ce3 Mon Sep 17 00:00:00 2001 From: Anthony Dresser Date: Tue, 13 Aug 2019 09:58:16 -0700 Subject: [PATCH] Fix encoding of uris for data protocol (#6723) * fix encoding or uris * fix tests --- src/sql/platform/connection/common/utils.ts | 10 ++++----- .../connectionManagementService.test.ts | 2 +- .../common/connectionStatusManager.test.ts | 2 +- .../api/common/extHostDataProtocol.ts | 22 +++++++++---------- 4 files changed, 18 insertions(+), 18 deletions(-) diff --git a/src/sql/platform/connection/common/utils.ts b/src/sql/platform/connection/common/utils.ts index 7c2dc32cbc..b0916a6067 100644 --- a/src/sql/platform/connection/common/utils.ts +++ b/src/sql/platform/connection/common/utils.ts @@ -13,11 +13,11 @@ const msInH = 3.6e6; const msInM = 60000; const msInS = 1000; export const uriPrefixes = { - default: 'connection://', - connection: 'connection://', - dashboard: 'dashboard://', - insights: 'insights://', - notebook: 'notebook://' + default: 'connection:', + connection: 'connection:', + dashboard: 'dashboard:', + insights: 'insights:', + notebook: 'notebook:' }; diff --git a/src/sql/platform/connection/test/common/connectionManagementService.test.ts b/src/sql/platform/connection/test/common/connectionManagementService.test.ts index 2e3a4851a6..7817b38294 100644 --- a/src/sql/platform/connection/test/common/connectionManagementService.test.ts +++ b/src/sql/platform/connection/test/common/connectionManagementService.test.ts @@ -217,7 +217,7 @@ suite('SQL ConnectionManagementService tests', () => { let connectionToUse = connection ? connection : connectionProfile; return new Promise((resolve, reject) => { let id = connectionToUse.getOptionsKey(); - let defaultUri = 'connection://' + (id ? id : connectionToUse.serverName + ':' + connectionToUse.databaseName); + let defaultUri = 'connection:' + (id ? id : connectionToUse.serverName + ':' + connectionToUse.databaseName); connectionManagementService.onConnectionRequestSent(() => { let info: azdata.ConnectionInfoSummary = { connectionId: error ? undefined : 'id', diff --git a/src/sql/platform/connection/test/common/connectionStatusManager.test.ts b/src/sql/platform/connection/test/common/connectionStatusManager.test.ts index 6b401daedb..abaa455cae 100644 --- a/src/sql/platform/connection/test/common/connectionStatusManager.test.ts +++ b/src/sql/platform/connection/test/common/connectionStatusManager.test.ts @@ -228,7 +228,7 @@ suite('SQL ConnectionStatusManager tests', () => { //Verify database name changed after connection is complete connections.updateDatabaseName(summary); connectionStatus = connections.findConnection(connection3Id); - let ownerUriWithDbName = Utils.generateUriWithPrefix(connectionStatus.connectionProfile, 'connection://'); + let ownerUriWithDbName = Utils.generateUriWithPrefix(connectionStatus.connectionProfile, 'connection:'); //The uri assigned to connection without db name should be the original one let connectionWitDbStatus = connections.getOriginalOwnerUri(ownerUriWithDbName); diff --git a/src/sql/workbench/api/common/extHostDataProtocol.ts b/src/sql/workbench/api/common/extHostDataProtocol.ts index bf2adf7f35..d68552d163 100644 --- a/src/sql/workbench/api/common/extHostDataProtocol.ts +++ b/src/sql/workbench/api/common/extHostDataProtocol.ts @@ -195,7 +195,7 @@ export class ExtHostDataProtocol extends ExtHostDataProtocolShape { // Connection Management handlers $connect(handle: number, connectionUri: string, connection: azdata.ConnectionInfo): Thenable { if (this.uriTransformer) { - connectionUri = URI.from(this.uriTransformer.transformIncoming(URI.parse(connectionUri))).toString(); + connectionUri = URI.from(this.uriTransformer.transformIncoming(URI.parse(connectionUri))).toString(true); } return this._resolveProvider(handle).connect(connectionUri, connection); } @@ -235,7 +235,7 @@ export class ExtHostDataProtocol extends ExtHostDataProtocolShape { $onConnectComplete(handle: number, connectionInfoSummary: azdata.ConnectionInfoSummary): void { if (this.uriTransformer) { - connectionInfoSummary.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(connectionInfoSummary.ownerUri))).toString(); + connectionInfoSummary.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(connectionInfoSummary.ownerUri))).toString(true); } this._proxy.$onConnectionComplete(handle, connectionInfoSummary); } @@ -261,7 +261,7 @@ export class ExtHostDataProtocol extends ExtHostDataProtocolShape { $runQuery(handle: number, ownerUri: string, selection: azdata.ISelectionData, runOptions?: azdata.ExecutionPlanOptions): Thenable { if (this.uriTransformer) { - ownerUri = URI.from(this.uriTransformer.transformIncoming(URI.parse(ownerUri))).toString(); + ownerUri = URI.from(this.uriTransformer.transformIncoming(URI.parse(ownerUri))).toString(true); } return this._resolveProvider(handle).runQuery(ownerUri, selection, runOptions); } @@ -292,51 +292,51 @@ export class ExtHostDataProtocol extends ExtHostDataProtocolShape { $getQueryRows(handle: number, rowData: azdata.QueryExecuteSubsetParams): Thenable { if (this.uriTransformer) { - rowData.ownerUri = URI.from(this.uriTransformer.transformIncoming(URI.parse(rowData.ownerUri))).toString(); + rowData.ownerUri = URI.from(this.uriTransformer.transformIncoming(URI.parse(rowData.ownerUri))).toString(true); } return this._resolveProvider(handle).getQueryRows(rowData); } $disposeQuery(handle: number, ownerUri: string): Thenable { if (this.uriTransformer) { - ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(ownerUri))).toString(); + ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(ownerUri))).toString(true); } return this._resolveProvider(handle).disposeQuery(ownerUri); } $onQueryComplete(handle: number, result: azdata.QueryExecuteCompleteNotificationResult): void { if (this.uriTransformer) { - result.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(result.ownerUri))).toString(); + result.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(result.ownerUri))).toString(true); } this._proxy.$onQueryComplete(handle, result); } $onBatchStart(handle: number, batchInfo: azdata.QueryExecuteBatchNotificationParams): void { if (this.uriTransformer) { - batchInfo.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(batchInfo.ownerUri))).toString(); + batchInfo.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(batchInfo.ownerUri))).toString(true); } this._proxy.$onBatchStart(handle, batchInfo); } $onBatchComplete(handle: number, batchInfo: azdata.QueryExecuteBatchNotificationParams): void { if (this.uriTransformer) { - batchInfo.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(batchInfo.ownerUri))).toString(); + batchInfo.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(batchInfo.ownerUri))).toString(true); } this._proxy.$onBatchComplete(handle, batchInfo); } $onResultSetAvailable(handle: number, resultSetInfo: azdata.QueryExecuteResultSetNotificationParams): void { if (this.uriTransformer) { - resultSetInfo.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(resultSetInfo.ownerUri))).toString(); + resultSetInfo.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(resultSetInfo.ownerUri))).toString(true); } this._proxy.$onResultSetAvailable(handle, resultSetInfo); } $onResultSetUpdated(handle: number, resultSetInfo: azdata.QueryExecuteResultSetNotificationParams): void { if (this.uriTransformer) { - resultSetInfo.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(resultSetInfo.ownerUri))).toString(); + resultSetInfo.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(resultSetInfo.ownerUri))).toString(true); } this._proxy.$onResultSetUpdated(handle, resultSetInfo); } $onQueryMessage(handle: number, message: azdata.QueryExecuteMessageParams): void { if (this.uriTransformer) { - message.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(message.ownerUri))).toString(); + message.ownerUri = URI.from(this.uriTransformer.transformOutgoing(URI.parse(message.ownerUri))).toString(true); } this._proxy.$onQueryMessage(handle, message); }