-
- if(!removedNodes.isEmpty()) {
- for(InstanceIdentifier<Node> iidNode : removedNodes) {
- Optional<Node> optNode = UnimgrUtils.readNode(dataBroker, LogicalDatastoreType.CONFIGURATION, iidNode);
- if (optNode.isPresent()) {
- Node ovsdbNode = optNode.get();
- InstanceIdentifier<Node> iidBridgeNode = UnimgrMapper.getOvsdbBridgeNodeIid(ovsdbNode);
- deleteNode(iidBridgeNode);
- LOG.info("Received a request to remove a BridgeNode ", iidBridgeNode);
- }
- deleteNode(iidNode);
- LOG.info("Received a request to remove a Node ", iidNode);
- }
- }
- else {LOG.info("Removed Nodes is empty.");}
- }
-
- private void deleteNode(InstanceIdentifier<Node> iidNode) {
- WriteTransaction transaction = dataBroker.newWriteOnlyTransaction();
- transaction.delete(LogicalDatastoreType.OPERATIONAL, iidNode);
- transaction.delete(LogicalDatastoreType.CONFIGURATION, iidNode);
- CheckedFuture<Void, TransactionCommitFailedException> future = transaction.submit();
- try {
- future.checkedGet();
- } catch (TransactionCommitFailedException e) {
- LOG.warn("Failed to delete iidNode {} {}", e.getMessage(), iidNode);
- }