X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=olm%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Folm%2Futil%2FTransactionUtils.java;h=b473603815ef8123f340e2f4bcbdfd2fb31c954f;hb=refs%2Fchanges%2F46%2F100646%2F27;hp=4ae7f820b1da70fc53e3f57d314abb12b4e14f9e;hpb=431af557ffb3c6f36d4ad8324f36391a1b9bc9af;p=transportpce.git diff --git a/olm/src/test/java/org/opendaylight/transportpce/olm/util/TransactionUtils.java b/olm/src/test/java/org/opendaylight/transportpce/olm/util/TransactionUtils.java index 4ae7f820b..b47360381 100644 --- a/olm/src/test/java/org/opendaylight/transportpce/olm/util/TransactionUtils.java +++ b/olm/src/test/java/org/opendaylight/transportpce/olm/util/TransactionUtils.java @@ -8,52 +8,67 @@ 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 { @@ -61,10 +76,14 @@ 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; } @@ -94,153 +113,219 @@ public final class TransactionUtils { // } public static Network1 getNullNetwork() { - Network1 network = new Network1Builder().setLink(null).build(); + Map 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 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 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 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 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 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 linkConcentationValues = new ArrayList<>(); + Map 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 - 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 + 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>, Augmentation> map = Collections.emptyMap(); - Augmentation 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 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 aug2 = new Link1Builder().setAdministrativeGroup(Long.valueOf(123)) - .setAdministrativeState(State.InService) + .build()) + .build(); + Augmentation 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 supportingLinks = new ArrayList<>(); - SupportingLink supportingLink = new SupportingLinkBuilder().setLinkRef("ref1") + Map 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 links = new ArrayList<>(); + supportingLinks.put(supportingLink.key(),supportingLink); + supportingLinks.put(supportingLink2.key(),supportingLink2); + Map 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; @@ -260,18 +345,17 @@ public final class TransactionUtils { } public static Nodes getNodes(String nodeId, String mappingKey) { - List cpList = new ArrayList<>(); + Map 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 mappingList = new ArrayList<>(); + cpList.put(cp1.key(),cp1); + cpList.put(cp2.key(),cp2); Mapping map1 = new MappingBuilder() .setLogicalConnectionPoint("point") .setSupportingCircuitPackName("circuit name") @@ -280,29 +364,29 @@ public final class TransactionUtils { .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 cpList = new ArrayList<>(); + Map 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 mappingList = new ArrayList<>(); + cpList.put(cp1.key(),cp1); + cpList.put(cp2.key(),cp2); Mapping map1 = new MappingBuilder() .setLogicalConnectionPoint("point") .setSupportingCircuitPackName("circuit name") @@ -311,29 +395,29 @@ public final class TransactionUtils { .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 cpList = new ArrayList<>(); + Map 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 mappingList = new ArrayList<>(); + cpList.put(cp1.key(),cp1); + cpList.put(cp2.key(),cp2); Mapping map1 = new MappingBuilder() .setLogicalConnectionPoint("point") .setSupportingCircuitPackName("circuit name") @@ -342,14 +426,15 @@ public final class TransactionUtils { .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) {