X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=pce%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Ftransportpce%2Fpce%2Fnetworkanalyzer%2FPceOpticalNodeTest.java;h=20b3f752a6eb5c165da8207504b00a3c1cec33f6;hb=refs%2Fchanges%2F46%2F100646%2F27;hp=da0144307aeaf1a29820cc4f7a10f92eff4393f6;hpb=28f2a7aea63e35dd31dd883aa796d11838959324;p=transportpce.git diff --git a/pce/src/test/java/org/opendaylight/transportpce/pce/networkanalyzer/PceOpticalNodeTest.java b/pce/src/test/java/org/opendaylight/transportpce/pce/networkanalyzer/PceOpticalNodeTest.java index da0144307..20b3f752a 100644 --- a/pce/src/test/java/org/opendaylight/transportpce/pce/networkanalyzer/PceOpticalNodeTest.java +++ b/pce/src/test/java/org/opendaylight/transportpce/pce/networkanalyzer/PceOpticalNodeTest.java @@ -8,7 +8,6 @@ package org.opendaylight.transportpce.pce.networkanalyzer; -import java.math.BigDecimal; import java.util.Arrays; import java.util.BitSet; import java.util.HashMap; @@ -24,30 +23,30 @@ import org.opendaylight.transportpce.common.fixedflex.GridConstant; import org.opendaylight.transportpce.common.fixedflex.GridUtils; import org.opendaylight.transportpce.common.mapping.PortMapping; import org.opendaylight.transportpce.test.AbstractTest; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Node1; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.TerminationPoint1Builder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.optical.channel.types.rev200529.FrequencyGHz; -import org.opendaylight.yang.gen.v1.http.org.openroadm.common.optical.channel.types.rev200529.FrequencyTHz; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Node1; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.TerminationPoint1Builder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.optical.channel.types.rev211210.FrequencyGHz; +import org.opendaylight.yang.gen.v1.http.org.openroadm.common.optical.channel.types.rev211210.FrequencyTHz; import org.opendaylight.yang.gen.v1.http.org.openroadm.common.state.types.rev191129.State; import org.opendaylight.yang.gen.v1.http.org.openroadm.equipment.states.types.rev191129.AdminStates; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.DegreeAttributes; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.DegreeAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.SrgAttributes; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.SrgAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.termination.point.CpAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.termination.point.CtpAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.termination.point.PpAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.termination.point.RxTtpAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.termination.point.TxTtpAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.termination.point.XpdrClientAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.termination.point.XpdrNetworkAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.node.termination.point.XpdrPortAttributesBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmNodeType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmTpType; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.available.freq.map.AvailFreqMaps; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.available.freq.map.AvailFreqMapsBuilder; -import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.available.freq.map.AvailFreqMapsKey; -import org.opendaylight.yang.gen.v1.http.org.openroadm.service.format.rev190531.ServiceFormat; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.DegreeAttributes; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.DegreeAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.SrgAttributes; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.SrgAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.termination.point.CpAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.termination.point.CtpAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.termination.point.PpAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.termination.point.RxTtpAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.termination.point.TxTtpAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.termination.point.XpdrClientAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.termination.point.XpdrNetworkAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.networks.network.node.termination.point.XpdrPortAttributesBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.OpenroadmNodeType; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.OpenroadmTpType; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.available.freq.map.AvailFreqMaps; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.available.freq.map.AvailFreqMapsBuilder; +import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev211210.available.freq.map.AvailFreqMapsKey; +import org.opendaylight.yang.gen.v1.http.org.openroadm.service.format.rev191129.ServiceFormat; 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; @@ -60,6 +59,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.top 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.node.TerminationPoint; import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.node.TerminationPointBuilder; +import org.opendaylight.yangtools.yang.common.Decimal64; import org.opendaylight.yangtools.yang.common.Uint16; public class PceOpticalNodeTest extends AbstractTest { @@ -78,14 +78,15 @@ public class PceOpticalNodeTest extends AbstractTest { NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.SRGTXRXPP); node = node1Builder.setNodeId(new NodeId("test")).build(); availableBitSet.set(0,8); - MockitoAnnotations.initMocks(this); + MockitoAnnotations.openMocks(this); } @Test public void isValidTest() { OpenroadmNodeType nodeType = OpenroadmNodeType.ROADM; pceOpticalNode = new PceOpticalNode(deviceNodeId, serviceType, portMapping, node, nodeType, - StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50, + GridConstant.SLOT_WIDTH_50); Assert.assertTrue(pceOpticalNode.isValid()); } @@ -93,7 +94,8 @@ public class PceOpticalNodeTest extends AbstractTest { public void testInitSrgTps() { pceOpticalNode = new PceOpticalNode(deviceNodeId, serviceType, portMapping, node, - OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initSrgTps(); pceOpticalNode.initXndrTps(ServiceFormat.OMS); pceOpticalNode.initFrequenciesBitSet(); @@ -110,7 +112,8 @@ public class PceOpticalNodeTest extends AbstractTest { NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.XPONDERNETWORK); Node specificNode = node1Builder.build(); pceOpticalNode = new PceOpticalNode(deviceNodeId, serviceType, portMapping, specificNode, - OpenroadmNodeType.SRG, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.SRG, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initFrequenciesBitSet(); Assert.assertTrue(pceOpticalNode.isValid()); Assert.assertEquals(availableBitSet, pceOpticalNode.getBitSetData().get(88,96)); @@ -120,7 +123,8 @@ public class PceOpticalNodeTest extends AbstractTest { @Test public void testInitXndrTpDegTypes() { pceOpticalNode = new PceOpticalNode(deviceNodeId, serviceType, portMapping, node, - OpenroadmNodeType.DEGREE, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.DEGREE, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initFrequenciesBitSet(); Assert.assertTrue(pceOpticalNode.isValid()); Assert.assertEquals(usedBitSet,pceOpticalNode.getBitSetData().get(88,96)); @@ -130,7 +134,8 @@ public class PceOpticalNodeTest extends AbstractTest { @Test public void testInitXndrTpXpondrTypes() { pceOpticalNode = new PceOpticalNode(deviceNodeId, serviceType, portMapping, node, - OpenroadmNodeType.XPONDER, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.XPONDER, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initFrequenciesBitSet(); Assert.assertTrue(pceOpticalNode.isValid()); Assert.assertEquals(availableBitSet, pceOpticalNode.getBitSetData().get(88,96)); @@ -140,7 +145,8 @@ public class PceOpticalNodeTest extends AbstractTest { @Test public void testinitFrequenciesBitSet() { pceOpticalNode = new PceOpticalNode(null, null, null, node, - OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initXndrTps(ServiceFormat.OMS); pceOpticalNode.initFrequenciesBitSet(); Assert.assertFalse(pceOpticalNode.isValid()); @@ -151,9 +157,10 @@ public class PceOpticalNodeTest extends AbstractTest { @Test public void testGetRdmSrgClient() { pceOpticalNode = new PceOpticalNode(null, null, null, node, - OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initSrgTps(); - Assert.assertNull(pceOpticalNode.getRdmSrgClient("7")); + Assert.assertNull(pceOpticalNode.getRdmSrgClient("7", StringConstants.SERVICE_DIRECTION_AZ)); Assert.assertFalse(pceOpticalNode.isValid()); Assert.assertNull(pceOpticalNode.getBitSetData()); Assert.assertTrue(pceOpticalNode.checkTP("testTP")); @@ -164,11 +171,12 @@ public class PceOpticalNodeTest extends AbstractTest { NodeBuilder node1Builder = getNodeBuilderEmpty(geSupportingNodes(), OpenroadmTpType.SRGTXRXPP); Node specificNode = node1Builder.setNodeId(new NodeId("test")).build(); pceOpticalNode = new PceOpticalNode(null, null, null, specificNode, - OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initSrgTps(); pceOpticalNode.initFrequenciesBitSet(); pceOpticalNode.initXndrTps(ServiceFormat.OMS); - Assert.assertNull(pceOpticalNode.getRdmSrgClient("7")); + Assert.assertNull(pceOpticalNode.getRdmSrgClient("7" ,StringConstants.SERVICE_DIRECTION_AZ)); Assert.assertFalse(pceOpticalNode.isValid()); Assert.assertNull(pceOpticalNode.getBitSetData()); Assert.assertTrue(pceOpticalNode.checkTP("testTP")); @@ -177,9 +185,10 @@ public class PceOpticalNodeTest extends AbstractTest { @Test public void testGetRdmSrgClientDeg() { pceOpticalNode = new PceOpticalNode(null, null, null, node, - OpenroadmNodeType.DEGREE, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.DEGREE, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initSrgTps(); - Assert.assertNull(pceOpticalNode.getRdmSrgClient("7")); + Assert.assertNull(pceOpticalNode.getRdmSrgClient("7" ,StringConstants.SERVICE_DIRECTION_AZ)); Assert.assertFalse(pceOpticalNode.isValid()); Assert.assertNull(pceOpticalNode.getBitSetData()); Assert.assertTrue(pceOpticalNode.checkTP("testTP")); @@ -190,12 +199,13 @@ public class PceOpticalNodeTest extends AbstractTest { NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.SRGTXCP); Node specificNode = node1Builder.build(); pceOpticalNode = new PceOpticalNode(null, null, null, specificNode, - OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initSrgTps(); Assert.assertFalse(pceOpticalNode.isValid()); Assert.assertNull(pceOpticalNode.getBitSetData()); Assert.assertTrue(pceOpticalNode.checkTP("testTP")); - Assert.assertNull(pceOpticalNode.getRdmSrgClient("5")); + Assert.assertNull(pceOpticalNode.getRdmSrgClient("5", StringConstants.SERVICE_DIRECTION_AZ)); } @Test @@ -203,9 +213,10 @@ public class PceOpticalNodeTest extends AbstractTest { NodeBuilder node1Builder = getNodeBuilder(geSupportingNodes(), OpenroadmTpType.DEGREERXTTP); node = node1Builder.build(); pceOpticalNode = new PceOpticalNode(null, null, null, node, - OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, GridConstant.SLOT_WIDTH_50); + OpenroadmNodeType.ROADM, StringConstants.OPENROADM_DEVICE_VERSION_2_2_1, + GridConstant.SLOT_WIDTH_50, GridConstant.SLOT_WIDTH_50); pceOpticalNode.initSrgTps(); - Assert.assertNull(pceOpticalNode.getRdmSrgClient("2")); + Assert.assertNull(pceOpticalNode.getRdmSrgClient("2" ,StringConstants.SERVICE_DIRECTION_AZ)); Assert.assertFalse(pceOpticalNode.isValid()); Assert.assertNull(pceOpticalNode.getBitSetData()); Assert.assertTrue(pceOpticalNode.checkTP("testTP")); @@ -236,13 +247,13 @@ public class PceOpticalNodeTest extends AbstractTest { TerminationPointBuilder xpdrTpBldr = getTerminationPointBuilder(); xpdrTpBldr.addAugmentation(tp1Bldr.build()); xpdrTpBldr.addAugmentation(createAnotherTerminationPoint().build()); - org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1 node1 = getNode1(); + org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1 node1 = getNode1(); TerminationPoint xpdr = xpdrTpBldr.build(); org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Node1 node1Rev180226 = new Node1Builder() .setTerminationPoint(Map.of(xpdr.key(),xpdr)) .build(); - Node1 node11 = new org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Node1Builder() + Node1 node11 = new org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Node1Builder() .setAdministrativeState(AdminStates.InService).setOperationalState(State.InService).build(); @@ -263,13 +274,13 @@ public class PceOpticalNodeTest extends AbstractTest { xpdrTpBldr.addAugmentation(tp1Bldr.build()); xpdrTpBldr.addAugmentation(createAnotherTerminationPoint().build()); - org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1 node1 = getNode1Empty(); + org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1 node1 = getNode1Empty(); TerminationPoint xpdr = xpdrTpBldr.build(); org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Node1 node1Rev180226 = new Node1Builder() .setTerminationPoint(Map.of(xpdr.key(),xpdr)) .build(); - Node1 node11 = new org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.Node1Builder() + Node1 node11 = new org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev211210.Node1Builder() .setAdministrativeState(AdminStates.InService).setOperationalState(State.InService).build(); @@ -283,16 +294,16 @@ public class PceOpticalNodeTest extends AbstractTest { } private org.opendaylight - .yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1 getNode1() { - return new org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1Builder() + .yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1 getNode1() { + return new org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1Builder() .setSrgAttributes(getSrgAttributes()) .setDegreeAttributes(getDegAttributes()) .build(); } private org.opendaylight - .yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1 getNode1Empty() { - return new org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.Node1Builder() + .yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1 getNode1Empty() { + return new org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev211210.Node1Builder() .setSrgAttributes(getEmptySrgAttributes()) .setDegreeAttributes(getEmptyDegAttributes()) .build(); @@ -304,8 +315,9 @@ public class PceOpticalNodeTest extends AbstractTest { byteArray[7] = (byte) GridConstant.AVAILABLE_SLOT_VALUE; Map waveMap = new HashMap<>(); AvailFreqMaps availFreqMaps = new AvailFreqMapsBuilder().setMapName(GridConstant.C_BAND) - .setFreqMapGranularity(new FrequencyGHz(BigDecimal.valueOf(GridConstant.GRANULARITY))) - .setStartEdgeFreq(new FrequencyTHz(BigDecimal.valueOf(GridConstant.START_EDGE_FREQUENCY))) + .setFreqMapGranularity(new FrequencyGHz(Decimal64.valueOf(String.valueOf(GridConstant.GRANULARITY)))) + .setStartEdgeFreq( + new FrequencyTHz(Decimal64.valueOf(String.valueOf(GridConstant.START_EDGE_FREQUENCY)))) .setEffectiveBits(Uint16.valueOf(GridConstant.EFFECTIVE_BITS)) .setFreqMap(byteArray) .build(); @@ -341,9 +353,9 @@ public class PceOpticalNodeTest extends AbstractTest { } private org.opendaylight.yang.gen - .v1.http.org.openroadm.network.topology.rev200529.TerminationPoint1Builder createAnotherTerminationPoint() { + .v1.http.org.openroadm.network.topology.rev211210.TerminationPoint1Builder createAnotherTerminationPoint() { return new org.opendaylight - .yang.gen.v1.http.org.openroadm.network.topology.rev200529.TerminationPoint1Builder() + .yang.gen.v1.http.org.openroadm.network.topology.rev211210.TerminationPoint1Builder() .setCtpAttributes((new CtpAttributesBuilder()).build()) .setCpAttributes((new CpAttributesBuilder()).build()) .setTxTtpAttributes((new TxTtpAttributesBuilder()).setUsedWavelengths(Map.of()).build())