fix(core): connection info access

This commit is contained in:
Wroud
2020-06-14 13:57:43 +03:00
parent 60c999029e
commit a699d7f875
2 changed files with 7 additions and 2 deletions
@@ -15,6 +15,7 @@ import { useConnectionInfo } from '../../shared/ConnectionsManager/useConnection
import { NavNode } from '../../shared/NodesManager/EntityTypes';
import { EObjectFeature } from '../../shared/NodesManager/EObjectFeature';
import { NavNodeManagerService } from '../../shared/NodesManager/NavNodeManagerService';
import { NodeManagerUtils } from '../../shared/NodesManager/NodeManagerUtils';
import { useNode } from '../../shared/NodesManager/useNode';
import { useChildren } from '../../shared/useChildren';
import { NavigationTreeService } from '../NavigationTreeService';
@@ -37,7 +38,8 @@ export function useNavigationTree(nodeId: string, parentId: string) {
let isExpandedFiltered = isExpanded;
if (node.objectFeatures.includes(EObjectFeature.dataSource)) {
const { connectionInfo } = useConnectionInfo(nodeId);
const connectionId = NodeManagerUtils.connectionNodeIdToConnectionId(nodeId);
const { connectionInfo } = useConnectionInfo(connectionId);
if (!connectionInfo?.features.includes(EConnectionFeature.connected)) {
isExpandedFiltered = false;
}
@@ -15,6 +15,7 @@ import { NotificationService } from '@dbeaver/core/eventsLog';
import { ConnectionsManagerService } from '../shared/ConnectionsManager/ConnectionsManagerService';
import { EObjectFeature } from '../shared/NodesManager/EObjectFeature';
import { NavNodeManagerService, ROOT_NODE_PATH } from '../shared/NodesManager/NavNodeManagerService';
import { NodeManagerUtils } from '../shared/NodesManager/NodeManagerUtils';
@injectable()
export class NavigationTreeService {
@@ -38,7 +39,9 @@ export class NavigationTreeService {
const node = this.navNodeManagerService.getNode(id);
if (node?.objectFeatures.includes(EObjectFeature.dataSource)) {
await this.connectionsManagerService.refreshConnectionInfoAsync(id);
await this.connectionsManagerService.refreshConnectionInfoAsync(
NodeManagerUtils.connectionNodeIdToConnectionId(id)
);
}
return true;
} catch (exception) {