X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=olm%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Folm%2Futil%2FOlmUtils.java;h=f30207425d996420854f267d272c1461dfee4ab8;hb=67763b4d82e44c68fdbc765cdeec5496ff65b01e;hp=b2e04a8f82ade2ec2f53407f5655e4870c8320bb;hpb=f24ef1be335962ef2f17cefb034a0acde2e980c7;p=transportpce.git diff --git a/olm/src/main/java/org/opendaylight/transportpce/olm/util/OlmUtils.java b/olm/src/main/java/org/opendaylight/transportpce/olm/util/OlmUtils.java index b2e04a8f8..f30207425 100644 --- a/olm/src/main/java/org/opendaylight/transportpce/olm/util/OlmUtils.java +++ b/olm/src/main/java/org/opendaylight/transportpce/olm/util/OlmUtils.java @@ -11,21 +11,16 @@ import java.util.Optional; import java.util.concurrent.ExecutionException; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; - -import org.opendaylight.controller.md.sal.binding.api.DataBroker; -import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction; -import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType; +import org.opendaylight.mdsal.binding.api.DataBroker; +import org.opendaylight.mdsal.binding.api.ReadTransaction; +import org.opendaylight.mdsal.common.api.LogicalDatastoreType; import org.opendaylight.transportpce.common.device.DeviceTransactionManager; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.GetPmInput; import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev170418.GetPmOutputBuilder; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.Network; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.Nodes; -import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.NodesKey; -import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.network.topology.topology.topology.types.TopologyNetconf; -import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.NetworkTopology; -import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.TopologyId; -import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.Topology; -import org.opendaylight.yang.gen.v1.urn.tbd.params.xml.ns.yang.network.topology.rev131021.network.topology.TopologyKey; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210315.Network; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210315.OpenroadmNodeVersion; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210315.network.Nodes; +import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210315.network.NodesKey; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -34,13 +29,8 @@ public final class OlmUtils { private static final Logger LOG = LoggerFactory.getLogger(OlmUtils.class); private static long DATABROKER_READ_TIMEOUT_SECONDS = 120; - public static long OLM_TIMER_1 = 120000; //nominal value is 120000 - functional test value may be 3000 - public static long OLM_TIMER_2 = 20000; //nominal value is 20000 - functional test value may be 2000 - private static final InstanceIdentifier NETCONF_TOPO_IID = - InstanceIdentifier - .create(NetworkTopology.class) - .child(Topology.class, - new TopologyKey(new TopologyId(TopologyNetconf.QNAME.getLocalName()))); + public static final long OLM_TIMER_1 = 120000; //#FUNCTESTVAL= 3000; + public static final long OLM_TIMER_2 = 20000; //#FUNCTESTVAL= 2000; /** * This static method returns the port mapping {@link Nodes} for node. @@ -54,9 +44,9 @@ public final class OlmUtils { public static Optional getNode(String nodeId, DataBroker db) { InstanceIdentifier nodesIID = InstanceIdentifier.create(Network.class) .child(Nodes.class, new NodesKey(nodeId)); - try (ReadOnlyTransaction readTransaction = db.newReadOnlyTransaction()) { + try (ReadTransaction readTransaction = db.newReadOnlyTransaction()) { return readTransaction.read(LogicalDatastoreType.CONFIGURATION, nodesIID) - .get(DATABROKER_READ_TIMEOUT_SECONDS, TimeUnit.SECONDS).toJavaUtil(); + .get(DATABROKER_READ_TIMEOUT_SECONDS, TimeUnit.SECONDS); } catch (InterruptedException | ExecutionException | TimeoutException ex) { LOG.error("Unable to read Portmapping for nodeId {}", nodeId, ex); return Optional.empty(); @@ -82,14 +72,23 @@ public final class OlmUtils { * @return Result of the request list of PM readings */ public static GetPmOutputBuilder pmFetch(GetPmInput input, DeviceTransactionManager deviceTransactionManager, - Nodes.OpenroadmVersion openRoadmVersion) { + OpenroadmNodeVersion openRoadmVersion) { LOG.info("Getting PM Data for NodeId: {} ResourceType: {} ResourceName: {}", input.getNodeId(), input.getResourceType(), input.getResourceIdentifier()); - GetPmOutputBuilder pmOutputBuilder = new GetPmOutputBuilder(); - if (openRoadmVersion.equals(Nodes.OpenroadmVersion._121)) { - pmOutputBuilder = OlmUtils121.pmFetch(input, deviceTransactionManager); - } else { - pmOutputBuilder = OlmUtils22.pmFetch(input, deviceTransactionManager); + GetPmOutputBuilder pmOutputBuilder; + switch (openRoadmVersion.getIntValue()) { + case 1: + pmOutputBuilder = OlmUtils121.pmFetch(input, deviceTransactionManager); + break; + case 2: + pmOutputBuilder = OlmUtils221.pmFetch(input, deviceTransactionManager); + break; + case 3: + pmOutputBuilder = OlmUtils710.pmFetch(input, deviceTransactionManager); + break; + default: + LOG.error("Unrecognized OpenRoadm version"); + pmOutputBuilder = new GetPmOutputBuilder(); } return pmOutputBuilder; }