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.rev210310.Network;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210310.network.Nodes;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210310.network.NodesKey;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev210310.network.nodes.NodeInfo.OpenroadmVersion;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private static final Logger LOG = LoggerFactory.getLogger(OlmUtils.class);
private static long DATABROKER_READ_TIMEOUT_SECONDS = 120;
- private static final InstanceIdentifier<Topology> 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.
public static Optional<Nodes> getNode(String nodeId, DataBroker db) {
InstanceIdentifier<Nodes> 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();
* Input parameter from the olm yang model get-pm rpc
* @param deviceTransactionManager
* Device tx manager
+ * @param openRoadmVersion
+ * OpenRoadm version number
*
* @return Result of the request list of PM readings
*/
public static GetPmOutputBuilder pmFetch(GetPmInput input, DeviceTransactionManager deviceTransactionManager,
- Nodes.OpenroadmVersion openRoadmVersion) {
+ OpenroadmVersion 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;
}