Skip to content

Commit cf35183

Browse files
enhancement: after deleting node, rest,grpc and ws clients in dest node are now updated.
1 parent be901d5 commit cf35183

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

ui/src/components/diagram-maker/diagram-maker-container.tsx

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -357,7 +357,7 @@ export const DiagramMakerContainer = ({
357357
message = "Are you sure you want to delete the edge(s) : [" + diagramMakerAction.payload.edgeIds + "]";
358358
result = "Deleting edge(s) : [" + diagramMakerAction.payload.edgeIds + "]";
359359
}
360-
if (diagramMakerAction.payload.nodeIds.length > 0 || diagramMakerAction.payload.edgeIds.length > 0) {
360+
if (diagramMakerAction.payload.edgeIds.length > 0 || diagramMakerAction.payload.nodeIds.length > 0) {
361361
if (window.confirm(message)) {
362362
// delete the sourceNodes info from destination nodes for the edges getting deleted.
363363
const parsedCurrentConfig: CompageJsonConfig = getParsedCurrentConfig();
@@ -366,7 +366,6 @@ export const DiagramMakerContainer = ({
366366
// iterate over edges and extract nodes and modify the clients
367367
const selectedEdge: CompageEdge = parsedCurrentConfig.edges[item];
368368
if (selectedEdge) {
369-
console.log(selectedEdge.dest);
370369
const srcNodeConfig: CompageNode = parsedCurrentConfig.nodes[selectedEdge.src];
371370
const destNodeState: CompageNode = parsedModifiedState.nodes[selectedEdge.dest];
372371
if (destNodeState) {
@@ -376,6 +375,22 @@ export const DiagramMakerContainer = ({
376375
}
377376
}
378377
}
378+
// delete the sourceNodes info from destination nodes for the node getting deleted.
379+
for (const nodeIdsToBeDeleted of diagramMakerAction.payload.nodeIds) {
380+
// iterate over nodes and check if the node has sourceNode reference in clients.
381+
const nodeToBeDeletedConfig: CompageNode = parsedCurrentConfig.nodes[nodeIdsToBeDeleted];
382+
// tslint:disable-next-line: forin
383+
for (const key in parsedModifiedState.nodes) {
384+
const destNodeState: CompageNode = parsedModifiedState.nodes[key];
385+
const destNodeConfig: CompageNode = parsedCurrentConfig.nodes[key];
386+
if (nodeToBeDeletedConfig.id !== destNodeConfig.id) {
387+
removeGrpcClient(nodeToBeDeletedConfig, destNodeState);
388+
removeRestClient(nodeToBeDeletedConfig, destNodeState);
389+
// removeWsClient(nodeToBeDeleted, destNodeState)
390+
}
391+
}
392+
}
393+
379394
setModifiedState(JSON.stringify(parsedModifiedState));
380395
} else {
381396
return;

0 commit comments

Comments
 (0)