From 88161cc37d177c0c1e8b69fd096c9378ba3e6119 Mon Sep 17 00:00:00 2001 From: Yurong He <43652751+YurongHe@users.noreply.github.com> Date: Mon, 8 Apr 2019 14:06:46 -0700 Subject: [PATCH] Fixed cancel connectionDialog from attach to shows dup "select connection" (#4865) --- src/sql/parts/notebook/models/notebookModel.ts | 1 - src/sql/parts/notebook/notebookActions.ts | 14 ++++++++++---- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/src/sql/parts/notebook/models/notebookModel.ts b/src/sql/parts/notebook/models/notebookModel.ts index 30bf4946f2..48121093c3 100644 --- a/src/sql/parts/notebook/models/notebookModel.ts +++ b/src/sql/parts/notebook/models/notebookModel.ts @@ -668,7 +668,6 @@ export class NotebookModel extends Disposable implements INotebookModel { }); } else { this._onValidConnectionSelected.fire(false); - throw new Error('No valid connection'); } } catch (err) { let msg = notebookUtils.getErrorMessage(err); diff --git a/src/sql/parts/notebook/notebookActions.ts b/src/sql/parts/notebook/notebookActions.ts index 3934963258..9778d45110 100644 --- a/src/sql/parts/notebook/notebookActions.ts +++ b/src/sql/parts/notebook/notebookActions.ts @@ -387,7 +387,9 @@ export class AttachToDropdown extends SelectBox { this.selectWithOptionName(msgSelectConnection); } else { - connections.push(msgAddNewConnection); + if (!connections.includes(msgAddNewConnection)) { + connections.push(msgAddNewConnection); + } } this.setOptions(connections); } @@ -396,9 +398,13 @@ export class AttachToDropdown extends SelectBox { private loadWithSelectConnection(connections: string[]): string[] { if (connections && connections.length > 0) { - connections.unshift(msgSelectConnection); + if (!connections.includes(msgSelectConnection)) { + connections.unshift(msgSelectConnection); + } this.selectWithOptionName(msgSelectConnection); - connections.push(msgAddNewConnection); + if (!connections.includes(msgAddNewConnection)) { + connections.push(msgAddNewConnection); + } this.setOptions(connections); } return connections; @@ -470,7 +476,7 @@ export class AttachToDropdown extends SelectBox { } let connectionUri = this._connectionManagementService.getConnectionUri(connection); let connectionProfile = new ConnectionProfile(this._capabilitiesService, connection); - let connectedServer = connectionProfile.title? connectionProfile.title : connectionProfile.serverName; + let connectedServer = connectionProfile.title ? connectionProfile.title : connectionProfile.serverName; //Check to see if the same server is already there in dropdown. We only have server names in dropdown if (attachToConnections.some(val => val === connectedServer)) { this.loadAttachToDropdown(this.model, this.getKernelDisplayName());