From cb2cea4ebd4707a5aa449eb4fa76751b881cd9dc Mon Sep 17 00:00:00 2001 From: Charles Gagnon Date: Fri, 20 Sep 2019 13:57:28 -0700 Subject: [PATCH] Remove Data Services folder (#7147) * Remove Data Services folder * Remove copy path from HDFS node * Add comment --- .../src/objectExplorer.test.ts | 13 ++-- extensions/mssql/package.json | 4 +- extensions/mssql/src/constants.ts | 1 - .../hdfsProvider.ts | 2 +- .../objectExplorerNodeProvider.ts | 66 ++++--------------- resources/xlf/de/mssql.de.xlf | 4 -- resources/xlf/en/mssql.xlf | 3 - resources/xlf/es/mssql.es.xlf | 4 -- resources/xlf/fr/mssql.fr.xlf | 4 -- resources/xlf/it/mssql.it.xlf | 4 -- resources/xlf/ja/mssql.ja.xlf | 4 -- resources/xlf/ko/mssql.ko.xlf | 4 -- resources/xlf/pt-br/mssql.pt-BR.xlf | 4 -- resources/xlf/ru/mssql.ru.xlf | 4 -- resources/xlf/zh-hans/mssql.zh-Hans.xlf | 4 -- resources/xlf/zh-hant/mssql.zh-Hant.xlf | 4 -- 16 files changed, 21 insertions(+), 108 deletions(-) diff --git a/extensions/integration-tests/src/objectExplorer.test.ts b/extensions/integration-tests/src/objectExplorer.test.ts index 473b0b78db..f25d108bd5 100644 --- a/extensions/integration-tests/src/objectExplorer.test.ts +++ b/extensions/integration-tests/src/objectExplorer.test.ts @@ -41,7 +41,7 @@ class ObjectExplorerTester { @stressify({ dop: ObjectExplorerTester.ParallelCount }) async bdcNodeLabelTest(): Promise { - const expectedNodeLabel = ['Databases', 'Security', 'Server Objects', 'Data Services']; + const expectedNodeLabel = ['Databases', 'Security', 'Server Objects']; const server = await getBdcServer(); await this.verifyOeNode(server, DefaultConnectTimeoutInMs, expectedNodeLabel); } @@ -120,12 +120,13 @@ class ObjectExplorerTester { const index = nodes.findIndex(node => node.nodePath.includes(server.serverName)); assert(index !== -1, `Failed to find server: "${server.serverName}" in OE tree`); - const actualNodeLabel = []; - const children = await nodes[index].getChildren(); - assert(children.length === expectedNodeLabel.length, `Expecting node count: ${expectedNodeLabel.length}, Actual: ${children.length}`); + // TODO: #7146 HDFS isn't always filled in by the call to getChildren since it's loaded asynchronously. To avoid this test being flaky just removing + // the node for now if it exists until a proper fix can be made. + const children = (await nodes[index].getChildren()).filter(c => c.label !== 'HDFS'); + const actualLabelsString = children.map(c => c.label).join(','); + const expectedLabelString = expectedNodeLabel.join(','); + assert(expectedNodeLabel.length === children.length && expectedLabelString === actualLabelsString, `Expected node label: "${expectedLabelString}", Actual: "${actualLabelsString}"`); - children.forEach(c => actualNodeLabel.push(c.label)); - assert(expectedNodeLabel.toLocaleString() === actualNodeLabel.toLocaleString(), `Expected node label: "${expectedNodeLabel}", Actual: "${actualNodeLabel}"`); } async verifyDBContextMenu(server: TestServerProfile, timeoutinMS: number, expectedActions: string[]): Promise { diff --git a/extensions/mssql/package.json b/extensions/mssql/package.json index a835b501c8..51e3862b37 100644 --- a/extensions/mssql/package.json +++ b/extensions/mssql/package.json @@ -265,7 +265,7 @@ }, { "command": "mssqlCluster.copyPath", - "when": "nodeType=~/^mssqlCluster/ && nodeType != mssqlCluster:connection && nodeType != mssqlCluster:message", + "when": "nodeType=~/^mssqlCluster/ && nodeType != mssqlCluster:connection && nodeType != mssqlCluster:message && nodeType != mssqlCluster:hdfs", "group": "1mssqlCluster@3" }, { @@ -275,7 +275,7 @@ }, { "command": "mssqlCluster.livy.cmd.submitSparkJob", - "when": "connectionProvider == MSSQL && nodeType == dataservices", + "when": "nodeType == mssqlCluster:hdfs", "group": "1root@1" }, { diff --git a/extensions/mssql/src/constants.ts b/extensions/mssql/src/constants.ts index 11ce3a92e7..717e14ade0 100644 --- a/extensions/mssql/src/constants.ts +++ b/extensions/mssql/src/constants.ts @@ -23,7 +23,6 @@ export const groupIdPropName = 'groupId'; export const defaultKnoxPort = 30443; export const groupIdName = 'groupId'; export const sqlProviderName = 'MSSQL'; -export const dataService = 'Data Services'; export const UNTITLED_SCHEMA = 'untitled'; diff --git a/extensions/mssql/src/objectExplorerNodeProvider/hdfsProvider.ts b/extensions/mssql/src/objectExplorerNodeProvider/hdfsProvider.ts index 53d63d4448..fe6105b715 100644 --- a/extensions/mssql/src/objectExplorerNodeProvider/hdfsProvider.ts +++ b/extensions/mssql/src/objectExplorerNodeProvider/hdfsProvider.ts @@ -233,7 +233,7 @@ export class ConnectionNode extends FolderNode { metadata: undefined, nodePath: this.generateNodePath(), nodeStatus: undefined, - nodeType: this._nodeType, + nodeType: 'mssqlCluster:hdfs', nodeSubType: undefined, iconType: 'HDFSFolder' }; diff --git a/extensions/mssql/src/objectExplorerNodeProvider/objectExplorerNodeProvider.ts b/extensions/mssql/src/objectExplorerNodeProvider/objectExplorerNodeProvider.ts index 0848ec17e4..ea7e15425e 100644 --- a/extensions/mssql/src/objectExplorerNodeProvider/objectExplorerNodeProvider.ts +++ b/extensions/mssql/src/objectExplorerNodeProvider/objectExplorerNodeProvider.ts @@ -198,7 +198,7 @@ export class MssqlObjectExplorerNodeProvider extends ProviderBase implements azd private getSqlClusterSessionForNode(node: TreeNode): SqlClusterSession { let sqlClusterSession: SqlClusterSession = undefined; while (node !== undefined) { - if (node instanceof DataServicesNode) { + if (node instanceof SqlClusterRootNode) { sqlClusterSession = node.session; break; } else { @@ -281,14 +281,20 @@ class SqlClusterRootNode extends TreeNode { public getChildren(refreshChildren: boolean): TreeNode[] | Promise { if (refreshChildren || !this._children) { - this._children = []; - let dataServicesNode = new DataServicesNode(this._session, this._treeDataContext, this._nodePathValue); - dataServicesNode.parent = this; - this._children.push(dataServicesNode); + return this.refreshChildren(); } return this._children; } + private async refreshChildren(): Promise { + this._children = []; + let fileSource: IFileSource = await this.session.sqlClusterConnection.createHdfsFileSource(); + let hdfsNode = new ConnectionNode(this._treeDataContext, localize('hdfsFolder', "HDFS"), fileSource); + hdfsNode.parent = this; + this._children.push(hdfsNode); + return this._children; + } + getTreeItem(): vscode.TreeItem | Promise { throw new Error('Not intended for use in a file explorer view.'); } @@ -308,53 +314,3 @@ class SqlClusterRootNode extends TreeNode { return nodeInfo; } } - -class DataServicesNode extends TreeNode { - private _children: TreeNode[]; - constructor(private _session: SqlClusterSession, private _context: TreeDataContext, private _nodePath: string) { - super(); - } - - public get session(): SqlClusterSession { - return this._session; - } - - public get nodePathValue(): string { - return this._nodePath; - } - - public getChildren(refreshChildren: boolean): TreeNode[] | Promise { - if (refreshChildren || !this._children) { - return this.refreshChildren(); - } - return this._children; - } - - private async refreshChildren(): Promise { - this._children = []; - let fileSource: IFileSource = await this.session.sqlClusterConnection.createHdfsFileSource(); - let hdfsNode = new ConnectionNode(this._context, localize('hdfsFolder', "HDFS"), fileSource); - hdfsNode.parent = this; - this._children.push(hdfsNode); - return this._children; - } - - getTreeItem(): vscode.TreeItem | Promise { - throw new Error('Not intended for use in a file explorer view.'); - } - - getNodeInfo(): azdata.NodeInfo { - let nodeInfo: azdata.NodeInfo = { - label: localize('dataServicesLabel', "Data Services"), - isLeaf: false, - errorMessage: undefined, - metadata: undefined, - nodePath: this.generateNodePath(), - nodeStatus: undefined, - nodeType: 'dataservices', - nodeSubType: undefined, - iconType: 'folder' - }; - return nodeInfo; - } -} diff --git a/resources/xlf/de/mssql.de.xlf b/resources/xlf/de/mssql.de.xlf index ab47558452..1baca93b9e 100644 --- a/resources/xlf/de/mssql.de.xlf +++ b/resources/xlf/de/mssql.de.xlf @@ -746,10 +746,6 @@ HDFS HDFS - - Data Services - Data Services - diff --git a/resources/xlf/en/mssql.xlf b/resources/xlf/en/mssql.xlf index e5375c20b4..c4322130b1 100644 --- a/resources/xlf/en/mssql.xlf +++ b/resources/xlf/en/mssql.xlf @@ -550,9 +550,6 @@ HDFS - - Data Services - diff --git a/resources/xlf/es/mssql.es.xlf b/resources/xlf/es/mssql.es.xlf index a7035e3d5d..d2f142037e 100644 --- a/resources/xlf/es/mssql.es.xlf +++ b/resources/xlf/es/mssql.es.xlf @@ -746,10 +746,6 @@ HDFS HDFS - - Data Services - Data Services - diff --git a/resources/xlf/fr/mssql.fr.xlf b/resources/xlf/fr/mssql.fr.xlf index 9ea8aec86e..d310e79a72 100644 --- a/resources/xlf/fr/mssql.fr.xlf +++ b/resources/xlf/fr/mssql.fr.xlf @@ -746,10 +746,6 @@ HDFS HDFS - - Data Services - Services de données - diff --git a/resources/xlf/it/mssql.it.xlf b/resources/xlf/it/mssql.it.xlf index 58d8920735..303b754fd2 100644 --- a/resources/xlf/it/mssql.it.xlf +++ b/resources/xlf/it/mssql.it.xlf @@ -746,10 +746,6 @@ HDFS HDFS - - Data Services - Servizi dati - diff --git a/resources/xlf/ja/mssql.ja.xlf b/resources/xlf/ja/mssql.ja.xlf index 90dd9b94b4..6b3cc0b31a 100644 --- a/resources/xlf/ja/mssql.ja.xlf +++ b/resources/xlf/ja/mssql.ja.xlf @@ -746,10 +746,6 @@ HDFS Hdfs - - Data Services - Data Services - diff --git a/resources/xlf/ko/mssql.ko.xlf b/resources/xlf/ko/mssql.ko.xlf index 7cbce247ac..dfb8244c7e 100644 --- a/resources/xlf/ko/mssql.ko.xlf +++ b/resources/xlf/ko/mssql.ko.xlf @@ -746,10 +746,6 @@ HDFS HDFS - - Data Services - 데이터 서비스 - diff --git a/resources/xlf/pt-br/mssql.pt-BR.xlf b/resources/xlf/pt-br/mssql.pt-BR.xlf index 0d5827f8bb..3867d48e30 100644 --- a/resources/xlf/pt-br/mssql.pt-BR.xlf +++ b/resources/xlf/pt-br/mssql.pt-BR.xlf @@ -746,10 +746,6 @@ HDFS HDFS - - Data Services - Serviços de dados - diff --git a/resources/xlf/ru/mssql.ru.xlf b/resources/xlf/ru/mssql.ru.xlf index e9fbff2347..8b36820ca0 100644 --- a/resources/xlf/ru/mssql.ru.xlf +++ b/resources/xlf/ru/mssql.ru.xlf @@ -746,10 +746,6 @@ HDFS Hdfs - - Data Services - Службы данных - diff --git a/resources/xlf/zh-hans/mssql.zh-Hans.xlf b/resources/xlf/zh-hans/mssql.zh-Hans.xlf index 1cd127a84f..551b82cea6 100644 --- a/resources/xlf/zh-hans/mssql.zh-Hans.xlf +++ b/resources/xlf/zh-hans/mssql.zh-Hans.xlf @@ -746,10 +746,6 @@ HDFS Hdfs - - Data Services - 数据服务 - diff --git a/resources/xlf/zh-hant/mssql.zh-Hant.xlf b/resources/xlf/zh-hant/mssql.zh-Hant.xlf index 469fe10121..75ac606de2 100644 --- a/resources/xlf/zh-hant/mssql.zh-Hant.xlf +++ b/resources/xlf/zh-hant/mssql.zh-Hant.xlf @@ -746,10 +746,6 @@ HDFS Hdfs - - Data Services - 資料服務 -