package org.opendaylight.transportpce.olm.util;
-import java.math.BigDecimal;
import java.util.ArrayList;
-import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
-
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.binding.api.ReadWriteTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-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.NodesBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.NodesKey;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.nodes.CpToDegree;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.nodes.CpToDegreeBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.nodes.Mapping;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.nodes.MappingBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev170228.network.nodes.MappingKey;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev161014.NodeTypes;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev170929.FiberPmd;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev170929.RatioDB;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev170929.State;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link.attributes.amplified.link.SectionElementBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.span.attributes.LinkConcatenation;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.span.attributes.LinkConcatenationBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.Link1;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.Link1Builder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.link.OMSAttributesBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.link.oms.attributes.AmplifiedLinkBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.link.oms.attributes.SpanBuilder;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev170929.OpenroadmLinkType;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev150608.NetworkId;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev150608.NodeId;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.LinkId;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.Network1;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.Network1Builder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.network.Link;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.network.LinkBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.network.link.DestinationBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.network.link.SourceBuilder;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.network.link.SupportingLink;
-import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev150608.network.link.SupportingLinkBuilder;
+import org.opendaylight.mdsal.binding.api.DataBroker;
+import org.opendaylight.mdsal.binding.api.ReadWriteTransaction;
+import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
+import org.opendaylight.transportpce.common.NetworkUtils;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.Network;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.OpenroadmNodeVersion;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.cp.to.degree.CpToDegree;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.cp.to.degree.CpToDegreeBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.cp.to.degree.CpToDegreeKey;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.mapping.Mapping;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.mapping.MappingBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.mapping.MappingKey;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.Nodes;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.NodesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.NodesKey;
+import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev220316.network.nodes.NodeInfoBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.link.types.rev191129.FiberPmd;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.link.types.rev191129.RatioDB;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.equipment.states.types.rev191129.AdminStates;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link.attributes.AmplifiedLink;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link.attributes.AmplifiedLinkKey;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link.attributes.amplified.link.SectionElementBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.span.attributes.LinkConcatenation1.FiberType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.span.attributes.LinkConcatenation1Builder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Link1Builder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.link.OMSAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.link.oms.attributes.AmplifiedLinkBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.link.oms.attributes.SpanBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.link.concatenation.LinkConcatenation;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.link.concatenation.LinkConcatenationBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.link.concatenation.LinkConcatenationKey;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NetworkId;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.NodeId;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.network.Node;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.network.NodeBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.network.NodeKey;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.network.node.SupportingNode;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.network.node.SupportingNodeBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.LinkId;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Network1;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Network1Builder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.TpId;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.Link;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.LinkBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.LinkKey;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.link.DestinationBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.link.SourceBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.link.SupportingLink;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.link.SupportingLinkBuilder;
+import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.link.SupportingLinkKey;
import org.opendaylight.yangtools.yang.binding.Augmentation;
import org.opendaylight.yangtools.yang.binding.DataObject;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.common.Decimal64;
+import org.opendaylight.yangtools.yang.common.Uint16;
+import org.opendaylight.yangtools.yang.common.Uint32;
public final class TransactionUtils {
}
+ @SuppressWarnings({"unchecked","rawtypes"})
+ // FIXME check if the InstanceIdentifier raw type can be avoided
+ // Raw types use are discouraged since they lack type safety.
+ // Resulting Problems are observed at run time and not at compile time
public static boolean writeTransaction(DataBroker dataBroker, InstanceIdentifier instanceIdentifier,
DataObject object) {
ReadWriteTransaction transaction = dataBroker.newReadWriteTransaction();
- transaction.put(LogicalDatastoreType.CONFIGURATION, instanceIdentifier, object, true);
+ transaction.put(LogicalDatastoreType.CONFIGURATION, instanceIdentifier, object);
transaction.commit();// submit(Timeouts.DATASTORE_WRITE, Timeouts.DEVICE_WRITE_TIMEOUT_UNIT).get();
return true;
}
// }
public static Network1 getNullNetwork() {
- Network1 network = new Network1Builder().setLink(null).build();
+ Map<LinkKey, Link> nullMap = null;
+ Network1 network = new Network1Builder().setLink(nullMap).build();
Optional.of(network);
return network;
}
public static Network1 getEmptyNetwork() {
- Network1 network = new Network1Builder().setLink(new ArrayList<>()).build();
+ Network1 network = new Network1Builder().setLink(Map.of()).build();
+ Optional.of(network);
+ return network;
+ }
+
+ public static org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network
+ .rev180226.networks.Network getOverLayNetwork() {
+ SupportingNode supportingNode = new SupportingNodeBuilder()
+ .setNodeRef(new NodeId("node 1"))
+ .setNetworkRef(new NetworkId(NetworkUtils.UNDERLAY_NETWORK_ID))
+ .build();
+ NodeBuilder node1Builder = new NodeBuilder()
+ .setNodeId(new NodeId("node 1"))
+ .withKey(new NodeKey(new NodeId("node 1")))
+ .setSupportingNode(Map.of(supportingNode.key(),supportingNode));
+ Map<NodeKey,Node> nodes = new HashMap<>();
+ Node node1 = node1Builder.build();
+ nodes.put(node1.key(),node1);
+ SupportingNode supportingNode2 = new SupportingNodeBuilder()
+ .setNodeRef(new NodeId("node 2"))
+ .setNetworkRef(new NetworkId(NetworkUtils.UNDERLAY_NETWORK_ID))
+ .build();
+ NodeBuilder node2Builder = new NodeBuilder()
+ .setNodeId(new NodeId("node 2"))
+ .withKey(new NodeKey(new NodeId("node 2")))
+ .setSupportingNode(Map.of(supportingNode2.key(),supportingNode2));
+ Node node2 = node2Builder.build();
+ nodes.put(node2.key(),node2);
+ SupportingNode supportingNode3 = new SupportingNodeBuilder()
+ .setNodeRef(new NodeId("node 3"))
+ .setNetworkRef(new NetworkId(NetworkUtils.UNDERLAY_NETWORK_ID))
+ .build();
+ NodeBuilder node3Builder = new NodeBuilder()
+ .setNodeId(new NodeId("node 3"))
+ .withKey(new NodeKey(new NodeId("node 3")))
+ .setSupportingNode(Map.of(supportingNode3.key(),supportingNode3));
+ Node node3 = node3Builder.build();
+ nodes.put(node3.key(),node3);
+ SupportingNode supportingNode4 = new SupportingNodeBuilder()
+ .setNodeRef(new NodeId("node 4"))
+ .setNetworkRef(new NetworkId(NetworkUtils.UNDERLAY_NETWORK_ID))
+ .build();
+ NodeBuilder node4Builder = new NodeBuilder()
+ .setNodeId(new NodeId("node 4"))
+ .withKey(new NodeKey(new NodeId("node 4")))
+ .setSupportingNode(Map.of(supportingNode4.key(),supportingNode4));
+ Node node4 = node4Builder.build();
+ nodes.put(node4.key(),node4);
+ org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.NetworkBuilder
+ networkBuilder =
+ new org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks
+ .NetworkBuilder()
+ .setNode(nodes)
+ .setNetworkId(new NetworkId(NetworkUtils.OVERLAY_NETWORK_ID));
+ org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.Network network =
+ networkBuilder.build();
Optional.of(network);
return network;
}
public static Network1 getNetwork() {
- List<SupportingLink> supportingLinks = new ArrayList<>();
- SupportingLink supportingLink1 = new SupportingLinkBuilder().setLinkRef("ref1")
- .setNetworkRef(new NetworkId("net1")).build();
- SupportingLink supportingLink2 = new SupportingLinkBuilder().setLinkRef("ref2")
- .setNetworkRef(new NetworkId("net2")).build();
- supportingLinks.add(supportingLink1);
- supportingLinks.add(supportingLink2);
- List<Link> links = new ArrayList<>();
- Link link1 = new LinkBuilder().setLinkId(new LinkId("link 1"))
- .setDestination(new DestinationBuilder().setDestNode(new NodeId("node 1"))
- .setDestTp("dest tp").build())
- .setSource(new SourceBuilder().setSourceNode(new NodeId("node 2"))
- .setSourceTp("src tp").build())
- .setSupportingLink(supportingLinks).build();
+ Map<SupportingLinkKey,SupportingLink> supportingLinks = new HashMap<>();
+ SupportingLink supportingLink1 = new SupportingLinkBuilder()
+ .setLinkRef(new LinkId("ref1"))
+ .setNetworkRef(new NetworkId("net1"))
+ .build();
+ SupportingLink supportingLink2 = new SupportingLinkBuilder()
+ .setLinkRef(new LinkId("ref2"))
+ .setNetworkRef(new NetworkId("net2"))
+ .build();
+ supportingLinks.put(supportingLink1.key(),supportingLink1);
+ supportingLinks.put(supportingLink2.key(),supportingLink2);
+ Map<LinkKey,Link> links = new HashMap<>();
+ Link link1 = new LinkBuilder()
+ .setLinkId(new LinkId("link 1"))
+ .setDestination(
+ new DestinationBuilder()
+ .setDestNode(new NodeId("node 1"))
+ .setDestTp(new TpId("dest tp")).build())
+ .setSource(
+ new SourceBuilder()
+ .setSourceNode(new NodeId("node 2"))
+ .setSourceTp(new TpId("src tp"))
+ .build())
+ .setSupportingLink(supportingLinks)
+ .build();
- Link link2 = new LinkBuilder().setLinkId(new LinkId("link 2"))
- .setDestination(new DestinationBuilder().setDestNode(new NodeId("node 3"))
- .setDestTp("dest tp").build())
- .setSource(new SourceBuilder().setSourceNode(new NodeId("node 4"))
- .setSourceTp("src tp").build())
- .setSupportingLink(supportingLinks).build();
- links.add(link1);
- links.add(link2);
+ Link link2 = new LinkBuilder()
+ .setLinkId(new LinkId("link 2"))
+ .setDestination(
+ new DestinationBuilder()
+ .setDestNode(new NodeId("node 3"))
+ .setDestTp(new TpId("dest tp"))
+ .build())
+ .setSource(
+ new SourceBuilder()
+ .setSourceNode(new NodeId("node 4"))
+ .setSourceTp(new TpId("src tp"))
+ .build())
+ .setSupportingLink(supportingLinks)
+ .build();
+ links.put(link1.key(),link1);
+ links.put(link2.key(),link2);
Network1 network = new Network1Builder().setLink(links).build();
Optional.of(network);
return network;
}
public static Network1 getNetwork2() {
- List<LinkConcatenation> linkConcentationValues = new ArrayList<>();
+ Map<LinkConcatenationKey,LinkConcatenation> linkConcentationValues = new HashMap<>();
LinkConcatenation linkConcatenation = new LinkConcatenationBuilder()
- .setFiberType(LinkConcatenation.FiberType.Truewave)
- .setPmd(new FiberPmd(BigDecimal.ONE))
- .setSRLGId(Long.valueOf(1))
- .setSRLGLength(Long.valueOf(1))
+ .addAugmentation(new LinkConcatenation1Builder()
+ .setFiberType(FiberType.Truewave)
+ .setPmd(new FiberPmd(Decimal64.valueOf("1")))
+ .build())
+ .setSRLGId(Uint32.valueOf(1))
+ .setSRLGLength(Decimal64.valueOf("1"))
.build();
LinkConcatenation linkConcatenation2 = new LinkConcatenationBuilder()
- .setFiberType(LinkConcatenation.FiberType.Truewave)
- .setPmd(new FiberPmd(BigDecimal.ONE))
- .setSRLGId(Long.valueOf(1))
- .setSRLGLength(Long.valueOf(1))
+ .addAugmentation(new LinkConcatenation1Builder()
+ .setFiberType(FiberType.Truewave)
+ .setPmd(new FiberPmd(Decimal64.valueOf("1")))
+ .build())
+ .setSRLGId(Uint32.valueOf(1))
+ .setSRLGLength(Decimal64.valueOf("1"))
.build();
- linkConcentationValues.add(linkConcatenation);
- linkConcentationValues.add(linkConcatenation2);
- List<org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link.attributes.AmplifiedLink>
- amplifiedLinkValues = new ArrayList<>();
- org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link.attributes.AmplifiedLink al = new
- org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link.attributes
- .AmplifiedLinkBuilder().setSectionElement(new SectionElementBuilder()
- .setSectionElement(new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link
+ linkConcentationValues.put(linkConcatenation.key(),linkConcatenation);
+ linkConcentationValues.put(linkConcatenation2.key(),linkConcatenation2);
+ Map<AmplifiedLinkKey,AmplifiedLink>
+ amplifiedLinkValues = new HashMap<>();
+ org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link.attributes.AmplifiedLink al =
+ new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link.attributes
+ .AmplifiedLinkBuilder().setSectionElement(new SectionElementBuilder()
+ .setSectionElement(new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link
.attributes.amplified.link.section.element.section.element.SpanBuilder()
- .setSpan(new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link
+ .setSpan(new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link
.attributes.amplified.link.section.element.section.element.span.SpanBuilder()
- .setAdministrativeState(State.InService)
+ .setAdministrativeState(AdminStates.InService)
.setAutoSpanloss(true)
- .setClfi("clfi")
- .setEngineeredSpanloss(new RatioDB(BigDecimal.ONE))
+ .setEngineeredSpanloss(new RatioDB(Decimal64.valueOf("1")))
.setLinkConcatenation(linkConcentationValues)
- .setSpanlossBase(new RatioDB(BigDecimal.ONE))
- .setSpanlossCurrent(new RatioDB(BigDecimal.ONE))
+ .setSpanlossBase(new RatioDB(Decimal64.valueOf("1")))
+ .setSpanlossCurrent(new RatioDB(Decimal64.valueOf("1")))
.build())
.build())
.build())
- .setSectionEltNumber(Integer.valueOf(1)).build();
- org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link.attributes.AmplifiedLink al2 = new
- org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link.attributes
+ .setSectionEltNumber(Uint16.valueOf(1)).build();
+ org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link.attributes.AmplifiedLink al2 = new
+ org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link.attributes
.AmplifiedLinkBuilder().setSectionElement(new SectionElementBuilder()
- .setSectionElement(new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link
+ .setSectionElement(new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link
.attributes.amplified.link.section.element.section.element.SpanBuilder()
- .setSpan(new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev170929.amplified.link
+ .setSpan(new org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev211210.amplified.link
.attributes.amplified.link.section.element.section.element.span.SpanBuilder()
- .setAdministrativeState(State.InService)
+ .setAdministrativeState(AdminStates.InService)
.setAutoSpanloss(true)
- .setClfi("clfi")
- .setEngineeredSpanloss(new RatioDB(BigDecimal.ONE))
+ .setEngineeredSpanloss(new RatioDB(Decimal64.valueOf("1")))
.setLinkConcatenation(linkConcentationValues)
- .setSpanlossBase(new RatioDB(BigDecimal.ONE))
- .setSpanlossCurrent(new RatioDB(BigDecimal.ONE))
+ .setSpanlossBase(new RatioDB(Decimal64.valueOf("1")))
+ .setSpanlossCurrent(new RatioDB(Decimal64.valueOf("1")))
.build())
.build())
.build())
- .setSectionEltNumber(Integer.valueOf(1)).build();
- amplifiedLinkValues.add(al);
- amplifiedLinkValues.add(al2);
- Map<Class<? extends Augmentation<Link>>, Augmentation<Link>> map = Collections.emptyMap();
- Augmentation<Link> aug1 = new Link1Builder().setAdministrativeGroup(Long.valueOf(123))
- .setAdministrativeState(State.InService)
+ .setSectionEltNumber(Uint16.valueOf(1)).build();
+ amplifiedLinkValues.put(al.key(),al);
+ amplifiedLinkValues.put(al2.key(),al2);
+ Augmentation<Link> aug1 = new Link1Builder()
.setAmplified(true)
- .setLinkLatency(Long.valueOf(123))
- .setLinkLength(BigDecimal.valueOf(123))
- .setLinkType(OpenroadmLinkType.ROADMTOROADM)
.setOMSAttributes(new OMSAttributesBuilder()
.setAmplifiedLink(new AmplifiedLinkBuilder().setAmplifiedLink(amplifiedLinkValues).build())
- .setOppositeLink(new LinkId("link 1"))
.setSpan(new SpanBuilder().build())
- .setTEMetric(Long.valueOf(123)).build())
- .setOperationalState(State.InService).build();
- Augmentation<Link> aug2 = new Link1Builder().setAdministrativeGroup(Long.valueOf(123))
- .setAdministrativeState(State.InService)
+ .build())
+ .build();
+ Augmentation<Link> aug2 = new Link1Builder()
.setAmplified(true)
- .setLinkLatency(Long.valueOf(123))
- .setLinkLength(BigDecimal.valueOf(123))
- .setLinkType(OpenroadmLinkType.ROADMTOROADM)
.setOMSAttributes(new OMSAttributesBuilder()
.setAmplifiedLink(new AmplifiedLinkBuilder().setAmplifiedLink(amplifiedLinkValues).build())
- .setOppositeLink(new LinkId("link 1"))
.setSpan(new SpanBuilder().build())
- .setTEMetric(Long.valueOf(123)).build())
- .setOperationalState(State.InService).build();
+ .build())
+ .build();
- List<SupportingLink> supportingLinks = new ArrayList<>();
- SupportingLink supportingLink = new SupportingLinkBuilder().setLinkRef("ref1")
+ Map<SupportingLinkKey,SupportingLink> supportingLinks = new HashMap<>();
+ SupportingLink supportingLink = new SupportingLinkBuilder().setLinkRef(new LinkId("ref1"))
.setNetworkRef(new NetworkId("net1")).build();
- SupportingLink supportingLink2 = new SupportingLinkBuilder().setLinkRef("ref2")
+ SupportingLink supportingLink2 = new SupportingLinkBuilder().setLinkRef(new LinkId("ref2"))
.setNetworkRef(new NetworkId("net1")).build();
- supportingLinks.add(supportingLink);
- supportingLinks.add(supportingLink2);
- List<Link> links = new ArrayList<>();
+ supportingLinks.put(supportingLink.key(),supportingLink);
+ supportingLinks.put(supportingLink2.key(),supportingLink2);
+ Map<LinkKey,Link> links = new HashMap<>();
Link link1 = new LinkBuilder().setLinkId(new LinkId("link 1"))
.setDestination(new DestinationBuilder().setDestNode(new NodeId("node 1"))
- .setDestTp("dest tp").build())
+ .setDestTp(new TpId("dest tp")).build())
.setSource(new SourceBuilder().setSourceNode(new NodeId("node 2"))
- .setSourceTp("src tp").build())
+ .setSourceTp(new TpId("src tp")).build())
.setSupportingLink(supportingLinks)
- .addAugmentation(Link1.class, aug1)
- .addAugmentation(Link1.class, aug2).build();
+ .addAugmentation(aug1)
+ .addAugmentation(aug2).build();
Link link2 = new LinkBuilder().setLinkId(new LinkId("link 2"))
.setDestination(new DestinationBuilder().setDestNode(new NodeId("node 3"))
- .setDestTp("dest tp").build())
+ .setDestTp(new TpId("dest tp")).build())
.setSource(new SourceBuilder().setSourceNode(new NodeId("node 4"))
- .setSourceTp("src tp").build())
+ .setSourceTp(new TpId("src tp")).build())
.setSupportingLink(supportingLinks).build();
- links.add(link1);
- links.add(link2);
+ links.put(link1.key(),link1);
+ links.put(link2.key(),link2);
Network1 network = new Network1Builder().setLink(links).build();
Optional.of(network);
return network;
}
public static Nodes getNodes(String nodeId, String mappingKey) {
- List<CpToDegree> cpList = new ArrayList<>();
+ Map<CpToDegreeKey,CpToDegree> cpList = new HashMap<>();
CpToDegree cp1 = new CpToDegreeBuilder()
- .setCircuitPackName("circuit name")
- .setDegreeNumber(Long.valueOf(123))
+ .setCircuitPackName("circuit name1")
+ .setDegreeNumber(Uint32.valueOf(123))
.build();
CpToDegree cp2 = new CpToDegreeBuilder()
- .setCircuitPackName("circuit name")
- .setDegreeNumber(Long.valueOf(123))
+ .setCircuitPackName("circuit name2")
+ .setDegreeNumber(Uint32.valueOf(123))
.build();
- cpList.add(cp1);
- cpList.add(cp2);
- List<Mapping> mappingList = new ArrayList<>();
+ cpList.put(cp1.key(),cp1);
+ cpList.put(cp2.key(),cp2);
Mapping map1 = new MappingBuilder()
.setLogicalConnectionPoint("point")
.setSupportingCircuitPackName("circuit name")
.setSupportingPort("port")
.withKey(new MappingKey((mappingKey != null) ? mappingKey : "null"))
.build();
- mappingList.add(map1);
- Nodes nodes = new NodesBuilder()
+ return new NodesBuilder()
.setNodeId(nodeId)
- .setNodeType(NodeTypes.Xpdr)
+ .setNodeInfo(new NodeInfoBuilder()
+ .setNodeType(org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.NodeTypes.Xpdr)
+ .setOpenroadmVersion(OpenroadmNodeVersion._121)
+ .build())
.setCpToDegree(cpList)
- .setMapping(mappingList)
+ .setMapping(Map.of(map1.key(),map1))
.build();
- return nodes;
}
public static Nodes getNodes2(String nodeId, String mappingKey) {
- List<CpToDegree> cpList = new ArrayList<>();
+ Map<CpToDegreeKey,CpToDegree> cpList = new HashMap<>();
CpToDegree cp1 = new CpToDegreeBuilder()
- .setCircuitPackName("circuit name")
- .setDegreeNumber(Long.valueOf(123))
+ .setCircuitPackName("circuit name1")
+ .setDegreeNumber(Uint32.valueOf(123))
.build();
CpToDegree cp2 = new CpToDegreeBuilder()
- .setCircuitPackName("circuit name")
- .setDegreeNumber(Long.valueOf(123))
+ .setCircuitPackName("circuit name2")
+ .setDegreeNumber(Uint32.valueOf(123))
.build();
- cpList.add(cp1);
- cpList.add(cp2);
- List<Mapping> mappingList = new ArrayList<>();
+ cpList.put(cp1.key(),cp1);
+ cpList.put(cp2.key(),cp2);
Mapping map1 = new MappingBuilder()
.setLogicalConnectionPoint("point")
.setSupportingCircuitPackName("circuit name")
.setSupportingPort("port")
.withKey(new MappingKey((mappingKey != null) ? mappingKey : "null"))
.build();
- mappingList.add(map1);
- Nodes nodes = new NodesBuilder()
+ return new NodesBuilder()
.setNodeId(nodeId)
- .setNodeType(null)
+ .setNodeInfo(new NodeInfoBuilder()
+ .setNodeType(null)
+ .setOpenroadmVersion(OpenroadmNodeVersion._121)
+ .build())
.setCpToDegree(cpList)
- .setMapping(mappingList)
+ .setMapping(Map.of(map1.key(),map1))
.build();
- return nodes;
}
public static Nodes getNodes3(String nodeId, String mappingKey) {
- List<CpToDegree> cpList = new ArrayList<>();
+ Map<CpToDegreeKey,CpToDegree> cpList = new HashMap<>();
CpToDegree cp1 = new CpToDegreeBuilder()
- .setCircuitPackName("circuit name")
- .setDegreeNumber(Long.valueOf(123))
+ .setCircuitPackName("circuit name1")
+ .setDegreeNumber(Uint32.valueOf(123))
.build();
CpToDegree cp2 = new CpToDegreeBuilder()
- .setCircuitPackName("circuit name")
- .setDegreeNumber(Long.valueOf(123))
+ .setCircuitPackName("circuit name2")
+ .setDegreeNumber(Uint32.valueOf(123))
.build();
- cpList.add(cp1);
- cpList.add(cp2);
- List<Mapping> mappingList = new ArrayList<>();
+ cpList.put(cp1.key(),cp1);
+ cpList.put(cp2.key(),cp2);
Mapping map1 = new MappingBuilder()
.setLogicalConnectionPoint("point")
.setSupportingCircuitPackName("circuit name")
.setSupportingPort("port")
.withKey(new MappingKey((mappingKey != null) ? mappingKey : "null"))
.build();
- mappingList.add(map1);
- Nodes nodes = new NodesBuilder()
+ return new NodesBuilder()
.setNodeId(nodeId)
- .setNodeType(NodeTypes.Rdm)
+ .setNodeInfo(new NodeInfoBuilder()
+ .setNodeType(org.opendaylight.yang.gen.v1.http.org.openroadm.device.types.rev191129.NodeTypes.Rdm)
+ .setOpenroadmVersion(OpenroadmNodeVersion._121)
+ .build())
.setCpToDegree(cpList)
- .setMapping(mappingList)
+ .setMapping(Map.of(map1.key(),map1))
.build();
- return nodes;
}
public static void writeNodeTransaction(String nodeId, DataBroker dataBroker, String mappingKey) {