Fixing OE nodes error handling. (#23172)

This commit is contained in:
Aasim Khan
2023-05-19 08:49:13 -07:00
committed by GitHub
parent da032cf6f1
commit e322641538
2 changed files with 12 additions and 3 deletions

View File

@@ -23,7 +23,7 @@ import { IConnectionManagementService } from 'sql/platform/connection/common/con
import { TreeCreationUtils } from 'sql/workbench/services/objectExplorer/browser/treeCreationUtils';
import { TreeUpdateUtils } from 'sql/workbench/services/objectExplorer/browser/treeUpdateUtils';
import { TreeSelectionHandler } from 'sql/workbench/services/objectExplorer/browser/treeSelectionHandler';
import { IObjectExplorerService, IServerTreeView, ServerTreeViewView } from 'sql/workbench/services/objectExplorer/browser/objectExplorerService';
import { ERROR_NODE_TYPE, IObjectExplorerService, IServerTreeView, ServerTreeViewView } from 'sql/workbench/services/objectExplorer/browser/objectExplorerService';
import { IConnectionProfile } from 'sql/platform/connection/common/interfaces';
import { Button } from 'sql/base/browser/ui/button/button';
import { TreeNode, TreeItemCollapsibleState } from 'sql/workbench/services/objectExplorer/common/treeNode';
@@ -928,6 +928,13 @@ export class ServerTreeView extends Disposable implements IServerTreeView {
}
}
}
// In case of error node, we need to show the error message
if (node instanceof TreeNode) {
if (node.objectType === ERROR_NODE_TYPE) {
this.showError(node.label);
}
}
}
public getActionContext(element: ServerTreeElement): any {

View File

@@ -38,6 +38,8 @@ export const enum ServerTreeViewView {
active = 'active'
}
export const ERROR_NODE_TYPE = 'error';
export interface IServerTreeView {
readonly tree: ITree | AsyncServerTree;
readonly onSelectionOrFocusChange: Event<void>;
@@ -583,12 +585,12 @@ export class ObjectExplorerService implements IObjectExplorerService {
};
let allNodes: azdata.NodeInfo[] = [];
let errorNode: azdata.NodeInfo = {
nodePath: nodePath,
nodePath: '',
parentNodePath: '',
objectType: 'error',
label: 'Error',
errorMessage: '',
nodeType: 'error',
nodeType: ERROR_NODE_TYPE,
isLeaf: true,
nodeSubType: '',
nodeStatus: '',