X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=inventory%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Finventory%2Flistener%2FDeviceConfigListener.java;h=ad1c73b308bfb2ba1d2aa016d36d25cc363d1ba3;hb=b1b3bafd549bb501937cea5c976d5344608b6ed3;hp=5e132da80c5cae867dee45783182c042d357cb94;hpb=5a2402f2aece5b66276aaaabf4201a06d8f3aa08;p=transportpce.git diff --git a/inventory/src/main/java/org/opendaylight/transportpce/inventory/listener/DeviceConfigListener.java b/inventory/src/main/java/org/opendaylight/transportpce/inventory/listener/DeviceConfigListener.java index 5e132da80..ad1c73b30 100644 --- a/inventory/src/main/java/org/opendaylight/transportpce/inventory/listener/DeviceConfigListener.java +++ b/inventory/src/main/java/org/opendaylight/transportpce/inventory/listener/DeviceConfigListener.java @@ -5,23 +5,20 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - package org.opendaylight.transportpce.inventory.listener; import java.util.Collection; import java.util.List; import java.util.concurrent.ExecutionException; import java.util.stream.Collectors; - import org.opendaylight.mdsal.binding.api.DataObjectModification; import org.opendaylight.mdsal.binding.api.DataObjectModification.ModificationType; import org.opendaylight.mdsal.binding.api.DataTreeChangeListener; import org.opendaylight.mdsal.binding.api.DataTreeModification; import org.opendaylight.transportpce.common.StringConstants; import org.opendaylight.transportpce.inventory.DeviceInventory; -import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNode; -import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNodeConnectionStatus; -import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNodeConnectionStatus.ConnectionStatus; +import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.device.rev240120.ConnectionOper.ConnectionStatus; +import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev231121.NetconfNode; import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.topology.Node; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -45,35 +42,33 @@ public class DeviceConfigListener implements DataTreeChangeListener { } @Override - public void onDataTreeChanged(Collection> changes) { + public void onDataTreeChanged(List> changes) { - //LOG.info("################testing np1:"+changes.toString()); + //LOG.debug("testing np1: {}", changes.toString()); String openROADMversion = ""; List> changesWithoutDefaultNetconfNode = getRealDevicesOnly(changes); for (DataTreeModification device : changesWithoutDefaultNetconfNode) { DataObjectModification rootNode = device.getRootNode(); - String nodeId = rootNode.getDataAfter().key().getNodeId().getValue(); + String nodeId = rootNode.dataAfter().key().getNodeId().getValue(); - LOG.info("################nodeId {}", nodeId); + LOG.debug("nodeId {}", nodeId); - NetconfNode netconfNode = rootNode.getDataAfter().augmentation(NetconfNode.class); - NetconfNodeConnectionStatus.ConnectionStatus connectionStatus = + NetconfNode netconfNode = rootNode.dataAfter().augmentation(NetconfNode.class); + ConnectionStatus connectionStatus = netconfNode.getConnectionStatus(); long count = netconfNode.getAvailableCapabilities().getAvailableCapability().stream() .filter(cp -> cp.getCapability().contains(StringConstants.OPENROADM_DEVICE_MODEL_NAME)) .count(); - LOG.info("################## DCL Modification Type {}", - device.getRootNode().getModificationType().toString()); - LOG.info("################## DCL Capability Count {}", count); - LOG.info("################## DCL Connection Status {}", connectionStatus); + LOG.debug("DCL Modification Type {}", device.getRootNode().modificationType().toString()); + LOG.debug("DCL Capability Count {}", count); + LOG.debug("DCL Connection Status {}", connectionStatus); if (isCreate(device) || isUpdate(device)) { LOG.info("Node {} was modified", nodeId); try { processModifiedSubtree(nodeId, netconfNode, openROADMversion); } catch (InterruptedException | ExecutionException e) { - LOG.error(e.getMessage(), e); + LOG.error("something wrong when modifying node {}", nodeId, e); } - } else if (isDelete(device)) { LOG.info("Node {} was deleted", nodeId); } @@ -92,7 +87,7 @@ public class DeviceConfigListener implements DataTreeChangeListener { */ private void processModifiedSubtree(String nodeId, NetconfNode netconfNode, String openROADMversion) throws InterruptedException, ExecutionException { - NetconfNodeConnectionStatus.ConnectionStatus connectionStatus = netconfNode.getConnectionStatus(); + ConnectionStatus connectionStatus = netconfNode.getConnectionStatus(); /*long count = netconfNode.getAvailableCapabilities().getAvailableCapability().stream() .filter(cp -> cp.getCapability().contains(StringConstants.OPENROADM_DEVICE_MODEL_NAME)).count(); if (count < 1) { @@ -116,14 +111,14 @@ public class DeviceConfigListener implements DataTreeChangeListener { */ private static List> getRealDevicesOnly(Collection> changes) { return changes.stream() - .filter(change -> (change.getRootNode().getDataAfter() != null + .filter(change -> (change.getRootNode().dataAfter() != null && !StringConstants.DEFAULT_NETCONF_NODEID - .equalsIgnoreCase(change.getRootNode().getDataAfter().key().getNodeId().getValue()) - && change.getRootNode().getDataAfter().augmentation(NetconfNode.class) != null) - || (change.getRootNode().getDataBefore() != null + .equalsIgnoreCase(change.getRootNode().dataAfter().key().getNodeId().getValue()) + && change.getRootNode().dataAfter().augmentation(NetconfNode.class) != null) + || (change.getRootNode().dataBefore() != null && !StringConstants.DEFAULT_NETCONF_NODEID.equalsIgnoreCase( - change.getRootNode().getDataBefore().key().getNodeId().getValue()) - && change.getRootNode().getDataBefore().augmentation(NetconfNode.class) != null + change.getRootNode().dataBefore().key().getNodeId().getValue()) + && change.getRootNode().dataBefore().augmentation(NetconfNode.class) != null )).collect(Collectors.toList()); } @@ -133,8 +128,8 @@ public class DeviceConfigListener implements DataTreeChangeListener { * */ private static boolean isCreate(DataTreeModification change) { - return change.getRootNode().getDataBefore() == null && change.getRootNode().getDataAfter() != null - && ModificationType.WRITE.equals(change.getRootNode().getModificationType()); + return change.getRootNode().dataBefore() == null && change.getRootNode().dataAfter() != null + && ModificationType.WRITE.equals(change.getRootNode().modificationType()); } /** @@ -142,7 +137,7 @@ public class DeviceConfigListener implements DataTreeChangeListener { * */ private static boolean isUpdate(DataTreeModification change) { - return ModificationType.SUBTREE_MODIFIED.equals(change.getRootNode().getModificationType()); + return ModificationType.SUBTREE_MODIFIED.equals(change.getRootNode().modificationType()); } /** @@ -150,7 +145,7 @@ public class DeviceConfigListener implements DataTreeChangeListener { * */ private static boolean isDelete(DataTreeModification change) { - return change.getRootNode().getDataBefore() != null && change.getRootNode().getDataAfter() == null - && ModificationType.DELETE.equals(change.getRootNode().getModificationType()); + return change.getRootNode().dataBefore() != null && change.getRootNode().dataAfter() == null + && ModificationType.DELETE.equals(change.getRootNode().modificationType()); } }