renderer unit test for neon 86/80686/2
authorRami <rmohamed.ext@orange.com>
Thu, 14 Feb 2019 14:17:59 +0000 (16:17 +0200)
committerguillaume.lambert <guillaume.lambert@orange.com>
Tue, 5 Mar 2019 15:03:36 +0000 (16:03 +0100)
- reintroduce renderer UT by adapting them to Neon
- change check empty list to check null : deleteUseWL doesn't remove
elements from list but the type attributes that contains the WL list

Change-Id: Id855ef011fd1b11d2476bfa27fd25bd3aa3a2a3f
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
renderer/src/test/java/org/opendaylight/transportpce/renderer/NetworkModelWaveLengthServiceFreeTest.java [new file with mode: 0644]
renderer/src/test/java/org/opendaylight/transportpce/renderer/NetworkModelWaveLengthServiceUseTest.java [new file with mode: 0644]
renderer/src/test/java/org/opendaylight/transportpce/renderer/provisiondevice/RendererServiceOperationsImplDeleteTest.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/provisiondevice/RendererServiceOperationsImplTest.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/stub/OlmServiceStub.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/utils/MountPointUtils.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/utils/ServiceDataUtils.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/utils/ServiceDeleteDataUtils.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/utils/ServiceImplementationDataUtils.java
renderer/src/test/java/org/opendaylight/transportpce/renderer/utils/WaveLengthServiceUtils.java

diff --git a/renderer/src/test/java/org/opendaylight/transportpce/renderer/NetworkModelWaveLengthServiceFreeTest.java b/renderer/src/test/java/org/opendaylight/transportpce/renderer/NetworkModelWaveLengthServiceFreeTest.java
new file mode 100644 (file)
index 0000000..e5c593f
--- /dev/null
@@ -0,0 +1,262 @@
+/*
+ * Copyright © 2018 Orange Systems, Inc. and others.  All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.transportpce.renderer;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.concurrent.ExecutionException;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.opendaylight.controller.md.sal.binding.api.MountPointService;
+import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
+import org.opendaylight.transportpce.common.device.DeviceTransactionManagerImpl;
+import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl;
+import org.opendaylight.transportpce.renderer.stub.MountPointServiceStub;
+import org.opendaylight.transportpce.renderer.stub.MountPointStub;
+import org.opendaylight.transportpce.renderer.utils.ServiceDeleteDataUtils;
+import org.opendaylight.transportpce.renderer.utils.WaveLengthServiceUtils;
+import org.opendaylight.transportpce.test.AbstractTest;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.degree.rev170929.degree.used.wavelengths.UsedWavelengthsBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.Node1;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.Node1Builder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.TerminationPoint1;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.TerminationPoint1Builder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.DegreeAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.SrgAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.CpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.CtpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.PpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.RxTtpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.TxTtpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.XpdrClientAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.XpdrNetworkAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.XpdrPortAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.pp.attributes.UsedWavelengthBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev170929.OpenroadmNodeType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev170929.OpenroadmTpType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.xponder.rev170929.xpdr.port.connection.attributes.WavelengthBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.PathDescription;
+
+@RunWith(Parameterized.class)
+public class NetworkModelWaveLengthServiceFreeTest extends AbstractTest {
+
+    private static final Long WAVE_LENGTH = 20L;
+    private NetworkModelWavelengthService networkModelWavelengthService;
+    private DeviceTransactionManager deviceTransactionManager;
+    private TerminationPoint1 terminationPoint1;
+    private PathDescription pathDescription;
+    private Node1 node1;
+
+    public NetworkModelWaveLengthServiceFreeTest(PathDescription pathDescription, TerminationPoint1 terminationPoint1,
+        Node1 node1) {
+        this.pathDescription = pathDescription;
+        this.terminationPoint1 = terminationPoint1;
+        this.node1 = node1;
+    }
+
+    @Parameterized.Parameters
+    public static Collection createParameters() {
+        List<Object[]> parameters = new ArrayList<>();
+
+        PathDescription pathDescription =
+            ServiceDeleteDataUtils.createTransactionPathDescription(OpenRoadmInterfacesImpl.TTP_TOKEN);
+
+        TerminationPoint1Builder terminationPoint1Builder = new TerminationPoint1Builder();
+        terminationPoint1Builder.setCtpAttributes((new CtpAttributesBuilder()).setUsedWavelengths(Collections
+            .singletonList((new UsedWavelengthsBuilder()).setIndex(WAVE_LENGTH).build())).build());
+        terminationPoint1Builder.setCpAttributes((new CpAttributesBuilder()).setUsedWavelengths(Collections
+            .singletonList((new org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network
+                .node.termination.point.cp.attributes.UsedWavelengthsBuilder())
+                .setIndex(WAVE_LENGTH).build())).build());
+        terminationPoint1Builder.setTxTtpAttributes((new TxTtpAttributesBuilder()).setUsedWavelengths(Collections
+            .singletonList((new UsedWavelengthsBuilder()).setIndex(WAVE_LENGTH).build())).build());
+        terminationPoint1Builder.setRxTtpAttributes((new RxTtpAttributesBuilder()).setUsedWavelengths(Collections
+            .singletonList((new UsedWavelengthsBuilder()).setIndex(WAVE_LENGTH).build())).build());
+        terminationPoint1Builder.setPpAttributes((new PpAttributesBuilder()).setUsedWavelength(Collections
+            .singletonList((new UsedWavelengthBuilder()).setIndex(WAVE_LENGTH).build())).build());
+        terminationPoint1Builder.setXpdrClientAttributes((new XpdrClientAttributesBuilder())
+            .setWavelength((new WavelengthBuilder()).setIndex(WAVE_LENGTH).build()).build());
+        terminationPoint1Builder.setXpdrNetworkAttributes((new XpdrNetworkAttributesBuilder())
+            .setWavelength((new WavelengthBuilder()).setIndex(WAVE_LENGTH).build()).build());
+        terminationPoint1Builder.setXpdrPortAttributes((new XpdrPortAttributesBuilder())
+            .setWavelength((new WavelengthBuilder()).setIndex(WAVE_LENGTH).build()).build());
+
+        Node1Builder node1Builder = new Node1Builder();
+        node1Builder.setDegreeAttributes((new DegreeAttributesBuilder()).setAvailableWavelengths(new ArrayList<>())
+            .build());
+        node1Builder.setSrgAttributes((new SrgAttributesBuilder()).setAvailableWavelengths(new ArrayList<>()).build());
+
+        for (OpenroadmNodeType nodeType : Arrays.asList(OpenroadmNodeType.XPONDER, OpenroadmNodeType.DEGREE,
+            OpenroadmNodeType.SRG)) {
+            node1Builder.setNodeType(nodeType);
+            terminationPoint1Builder.setTpType(OpenroadmTpType.DEGREETXTTP);
+            parameters.add(new Object[] { pathDescription, terminationPoint1Builder.build(), node1Builder.build() });
+        }
+
+        for (OpenroadmTpType tpType : OpenroadmTpType.values()) {
+            node1Builder.setNodeType(OpenroadmNodeType.DEGREE);
+            node1Builder.setDegreeAttributes(null);
+            terminationPoint1Builder.setTpType(tpType);
+            parameters.add(new Object[] { pathDescription, terminationPoint1Builder.build(), node1Builder.build() });
+        }
+
+        node1Builder.setNodeType(OpenroadmNodeType.SRG);
+        node1Builder.setDegreeAttributes((new DegreeAttributesBuilder()).setAvailableWavelengths(new ArrayList<>())
+            .build());
+        node1Builder.setSrgAttributes(null);
+        terminationPoint1Builder.setTpType(OpenroadmTpType.DEGREETXTTP);
+        parameters.add(new Object[] { pathDescription, terminationPoint1Builder.build(), node1Builder.build() });
+
+        return parameters;
+    }
+
+    @Before
+    public void setMountPoint() {
+        MountPointService mountPointService = new MountPointServiceStub(new MountPointStub(this.getDataBroker()));
+        this.deviceTransactionManager = new DeviceTransactionManagerImpl(mountPointService, 3000);
+        networkModelWavelengthService = new NetworkModelWavelengthServiceImpl(this.getDataBroker());
+    }
+
+    @Test
+    public void freeWavelengthsTest() throws ExecutionException, InterruptedException {
+        WaveLengthServiceUtils.putTerminationPoint1ToDatastore("node1" + OpenRoadmInterfacesImpl.TTP_TOKEN,
+            OpenRoadmInterfacesImpl.TTP_TOKEN,
+            this.terminationPoint1, this.deviceTransactionManager);
+        WaveLengthServiceUtils.putNode1ToDatastore("node1" + OpenRoadmInterfacesImpl.TTP_TOKEN, this.node1,
+            this.deviceTransactionManager);
+        this.networkModelWavelengthService.freeWavelengths(this.pathDescription);
+        Node1 updatedNode1 = WaveLengthServiceUtils.getNode1FromDatastore("node1" + OpenRoadmInterfacesImpl.TTP_TOKEN,
+            this.deviceTransactionManager);
+        TerminationPoint1 updatedTerminationPoint1 =
+            WaveLengthServiceUtils.getTerminationPoint1FromDatastore("node1" + OpenRoadmInterfacesImpl.TTP_TOKEN,
+                OpenRoadmInterfacesImpl.TTP_TOKEN, this.deviceTransactionManager);
+        switch (updatedTerminationPoint1.getTpType()) {
+            case DEGREETXRXCTP:
+            case DEGREETXCTP:
+            case DEGREERXCTP:
+                Assert.assertNull(updatedTerminationPoint1.getCtpAttributes());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case SRGTXCP:
+            case SRGRXCP:
+            case SRGTXRXCP:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getCpAttributes());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case DEGREETXRXTTP:
+            case DEGREETXTTP:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getTxTtpAttributes());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case DEGREERXTTP:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getRxTtpAttributes());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case SRGRXPP:
+            case SRGTXPP:
+            case SRGTXRXPP:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getPpAttributes());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case XPONDERCLIENT:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case XPONDERNETWORK:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case XPONDERPORT:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes());
+                break;
+            default:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+        }
+        switch (updatedNode1.getNodeType()) {
+            case DEGREE:
+                Assert.assertEquals(1, updatedNode1.getDegreeAttributes().getAvailableWavelengths().size());
+                Assert.assertEquals(WAVE_LENGTH,
+                    updatedNode1.getDegreeAttributes().getAvailableWavelengths().get(0).getIndex());
+                Assert.assertTrue(updatedNode1.getSrgAttributes().getAvailableWavelengths().isEmpty());
+                break;
+            case SRG:
+                Assert.assertEquals(1, updatedNode1.getSrgAttributes().getAvailableWavelengths().size());
+                Assert.assertEquals(WAVE_LENGTH,
+                    updatedNode1.getSrgAttributes().getAvailableWavelengths().get(0).getIndex());
+                Assert.assertTrue(updatedNode1.getDegreeAttributes().getAvailableWavelengths().isEmpty());
+                break;
+            default:
+                Assert.assertTrue(updatedNode1.getDegreeAttributes().getAvailableWavelengths().isEmpty());
+                Assert.assertTrue(updatedNode1.getSrgAttributes().getAvailableWavelengths().isEmpty());
+                break;
+        }
+    }
+}
diff --git a/renderer/src/test/java/org/opendaylight/transportpce/renderer/NetworkModelWaveLengthServiceUseTest.java b/renderer/src/test/java/org/opendaylight/transportpce/renderer/NetworkModelWaveLengthServiceUseTest.java
new file mode 100644 (file)
index 0000000..bbe3c91
--- /dev/null
@@ -0,0 +1,250 @@
+/*
+ * Copyright © 2018 Orange Systems, Inc. and others.  All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.transportpce.renderer;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.concurrent.ExecutionException;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.Parameterized;
+import org.opendaylight.controller.md.sal.binding.api.MountPointService;
+import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
+import org.opendaylight.transportpce.common.device.DeviceTransactionManagerImpl;
+import org.opendaylight.transportpce.common.openroadminterfaces.OpenRoadmInterfacesImpl;
+import org.opendaylight.transportpce.renderer.stub.MountPointServiceStub;
+import org.opendaylight.transportpce.renderer.stub.MountPointStub;
+import org.opendaylight.transportpce.renderer.utils.ServiceDeleteDataUtils;
+import org.opendaylight.transportpce.renderer.utils.WaveLengthServiceUtils;
+import org.opendaylight.transportpce.test.AbstractTest;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.degree.rev170929.degree.node.attributes.AvailableWavelengthsBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.Node1;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.Node1Builder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.TerminationPoint1;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.TerminationPoint1Builder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.DegreeAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.SrgAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.CpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.CtpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.PpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.RxTtpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.TxTtpAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.XpdrClientAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.XpdrNetworkAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.network.node.termination.point.XpdrPortAttributesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev170929.OpenroadmNodeType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev170929.OpenroadmTpType;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.service.path.PathDescription;
+
+@RunWith(Parameterized.class)
+public class NetworkModelWaveLengthServiceUseTest extends AbstractTest {
+
+    private NetworkModelWavelengthService networkModelWavelengthService;
+    private DeviceTransactionManager deviceTransactionManager;
+
+    private TerminationPoint1 terminationPoint1;
+    private PathDescription pathDescription;
+    private Node1 node1;
+
+    @Before
+    public void setMountPoint() {
+        MountPointService mountPointService = new MountPointServiceStub(new MountPointStub(this.getDataBroker()));
+        this.deviceTransactionManager = new DeviceTransactionManagerImpl(mountPointService, 3000);
+        networkModelWavelengthService = new NetworkModelWavelengthServiceImpl(this.getDataBroker());
+    }
+
+    public NetworkModelWaveLengthServiceUseTest(PathDescription pathDescription, TerminationPoint1 terminationPoint1,
+        Node1 node1) {
+        this.pathDescription = pathDescription;
+        this.terminationPoint1 = terminationPoint1;
+        this.node1 = node1;
+    }
+
+    @Parameterized.Parameters
+    public static Collection createParameters() {
+        List<Object[]> parameters = new ArrayList<>();
+
+        PathDescription pathDescription =
+            ServiceDeleteDataUtils.createTransactionPathDescription(OpenRoadmInterfacesImpl.TTP_TOKEN);
+
+        TerminationPoint1Builder terminationPoint1Builder = new TerminationPoint1Builder();
+        terminationPoint1Builder
+            .setCtpAttributes((new CtpAttributesBuilder()).setUsedWavelengths(new ArrayList<>()).build());
+        terminationPoint1Builder
+            .setCpAttributes((new CpAttributesBuilder()).setUsedWavelengths(new ArrayList<>()).build());
+        terminationPoint1Builder
+            .setTxTtpAttributes((new TxTtpAttributesBuilder()).setUsedWavelengths(new ArrayList<>()).build());
+        terminationPoint1Builder
+            .setRxTtpAttributes((new RxTtpAttributesBuilder()).setUsedWavelengths(new ArrayList<>()).build());
+        terminationPoint1Builder.setPpAttributes((new PpAttributesBuilder()).setUsedWavelength(new ArrayList<>())
+            .build());
+        terminationPoint1Builder.setXpdrClientAttributes((new XpdrClientAttributesBuilder()).build());
+        terminationPoint1Builder.setXpdrNetworkAttributes((new XpdrNetworkAttributesBuilder()).build());
+        terminationPoint1Builder.setXpdrPortAttributes((new XpdrPortAttributesBuilder()).build());
+
+        Node1Builder node1Builder = new Node1Builder();
+        node1Builder.setDegreeAttributes((new DegreeAttributesBuilder())
+            .setAvailableWavelengths(Collections.singletonList(new AvailableWavelengthsBuilder().setIndex(20L).build()))
+            .build());
+        node1Builder.setSrgAttributes((new SrgAttributesBuilder()).setAvailableWavelengths(Collections.singletonList(
+            new org.opendaylight.yang.gen.v1.http.org.openroadm.srg.rev170929.srg.node.attributes
+                .AvailableWavelengthsBuilder().setIndex(20L).build())).build());
+
+        for (OpenroadmNodeType nodeType : Arrays
+            .asList(OpenroadmNodeType.XPONDER, OpenroadmNodeType.DEGREE, OpenroadmNodeType.SRG)) {
+            node1Builder.setNodeType(nodeType);
+            terminationPoint1Builder.setTpType(OpenroadmTpType.DEGREETXTTP);
+            parameters.add(new Object[] { pathDescription, terminationPoint1Builder.build(), node1Builder.build() });
+        }
+
+        for (OpenroadmTpType tpType : OpenroadmTpType.values()) {
+            node1Builder.setNodeType(OpenroadmNodeType.DEGREE);
+            terminationPoint1Builder.setTpType(tpType);
+            parameters.add(new Object[] { pathDescription, terminationPoint1Builder.build(), node1Builder.build() });
+        }
+
+        return parameters;
+    }
+
+    @Test
+    public void freeWavelengthsTest() throws ExecutionException, InterruptedException {
+        WaveLengthServiceUtils
+            .putTerminationPoint1ToDatastore("node1" + OpenRoadmInterfacesImpl.TTP_TOKEN,
+                OpenRoadmInterfacesImpl.TTP_TOKEN,
+                this.terminationPoint1, this.deviceTransactionManager);
+        WaveLengthServiceUtils.putNode1ToDatastore("node1" + OpenRoadmInterfacesImpl.TTP_TOKEN, this.node1,
+            this.deviceTransactionManager);
+        this.networkModelWavelengthService.useWavelengths(this.pathDescription);
+        Node1 updatedNode1 = WaveLengthServiceUtils.getNode1FromDatastore("node1" + OpenRoadmInterfacesImpl.TTP_TOKEN,
+            this.deviceTransactionManager);
+        TerminationPoint1 updatedTerminationPoint1 = WaveLengthServiceUtils
+            .getTerminationPoint1FromDatastore("node1" + OpenRoadmInterfacesImpl.TTP_TOKEN,
+                OpenRoadmInterfacesImpl.TTP_TOKEN,
+                this.deviceTransactionManager);
+
+        switch (updatedTerminationPoint1.getTpType()) {
+            case DEGREETXRXCTP:
+            case DEGREETXCTP:
+            case DEGREERXCTP:
+                Assert.assertFalse(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case SRGTXCP:
+            case SRGRXCP:
+            case SRGTXRXCP:
+                Assert.assertTrue(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case DEGREETXRXTTP:
+            case DEGREETXTTP:
+                Assert.assertTrue(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case DEGREERXTTP:
+                Assert.assertTrue(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case SRGRXPP:
+            case SRGTXPP:
+            case SRGTXRXPP:
+                Assert.assertTrue(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertFalse(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case XPONDERCLIENT:
+                Assert.assertTrue(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrClientAttributes());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case XPONDERNETWORK:
+                Assert.assertTrue(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrNetworkAttributes());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+            case XPONDERPORT:
+                Assert.assertTrue(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNotNull(updatedTerminationPoint1.getXpdrPortAttributes());
+                break;
+            default:
+                Assert.assertTrue(updatedTerminationPoint1.getCtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getCpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getTxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getRxTtpAttributes().getUsedWavelengths().isEmpty());
+                Assert.assertTrue(updatedTerminationPoint1.getPpAttributes().getUsedWavelength().isEmpty());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrClientAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrNetworkAttributes().getWavelength());
+                Assert.assertNull(updatedTerminationPoint1.getXpdrPortAttributes().getWavelength());
+                break;
+        }
+        switch (updatedNode1.getNodeType()) {
+            case DEGREE:
+                Assert.assertNull(updatedNode1.getDegreeAttributes());
+                Assert.assertFalse(updatedNode1.getSrgAttributes().getAvailableWavelengths().isEmpty());
+                break;
+            case SRG:
+                Assert.assertNull(updatedNode1.getSrgAttributes());
+                Assert.assertFalse(updatedNode1.getDegreeAttributes().getAvailableWavelengths().isEmpty());
+                break;
+            default:
+                Assert.assertFalse(updatedNode1.getDegreeAttributes().getAvailableWavelengths().isEmpty());
+                Assert.assertFalse(updatedNode1.getSrgAttributes().getAvailableWavelengths().isEmpty());
+                break;
+        }
+
+    }
+}
index 32b6544ee2eeba6a55ae82cc3885f907f594b566..920e43f049390fec1f1c54f36c6a413555b8c1e2 100644 (file)
@@ -14,7 +14,6 @@ import com.google.common.util.concurrent.MoreExecutors;
 
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.Executors;
-
 import org.junit.Assert;
 import org.junit.Before;
 import org.junit.Test;
@@ -133,8 +132,8 @@ public class RendererServiceOperationsImplDeleteTest extends AbstractTest {
         serviceDeleteInputBuilder.setServiceName("service 1");
         serviceDeleteInputBuilder.setServiceHandlerHeader((new ServiceHandlerHeaderBuilder())
                 .setRequestId("request1").build());
-        ListenableFuture<ServiceDeleteOutput> serviceDeleteOutput =
-                this.rendererServiceOperations.serviceDelete(serviceDeleteInputBuilder.build());
+        ListenableFuture<ServiceDeleteOutput> serviceDeleteOutput
+                this.rendererServiceOperations.serviceDelete(serviceDeleteInputBuilder.build());
         ServiceDeleteOutput output = serviceDeleteOutput.get();
         Assert.assertEquals(ResponseCodes.RESPONSE_FAILED,
                 output.getConfigurationResponseCommon().getResponseCode());
index af3c0f71d69df027c495047f70d940e6312e57aa..3a4e25ad7262b14f4497ac2cbcd613ee10cc458b 100644 (file)
@@ -88,10 +88,12 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
         Mockito.doNothing().when(this.openRoadmInterfaces).postEquipmentState(Mockito.anyString(),
             Mockito.anyString(), Mockito.anyBoolean());
         NotificationPublishService notificationPublishService = new NotificationPublishServiceMock();
+
         this.olmService = Mockito.spy(this.olmService);
         this.deviceRenderer = Mockito.spy(this.deviceRenderer);
         this.rendererServiceOperations =  new RendererServiceOperationsImpl(this.deviceRenderer, this.olmService,
-                getDataBroker(), this.networkModelWavelengthService, notificationPublishService);
+            getDataBroker(), this.networkModelWavelengthService, notificationPublishService);
+
         ServicePathOutputBuilder mockOutputBuilder = new ServicePathOutputBuilder().setResult("success")
             .setSuccess(true);
         Mockito.doReturn(mockOutputBuilder.build()).when(this.deviceRenderer).setupServicePath(Mockito.any(),
@@ -147,7 +149,7 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
     @Test
     public void serviceImplementationTerminationPointAsResourceNetwork()
-            throws InterruptedException, ExecutionException {
+        throws InterruptedException, ExecutionException {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(OpenRoadmInterfacesImpl.NETWORK_TOKEN);
@@ -163,7 +165,7 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
     @Test
     public void serviceImplementationTerminationPointAsResourceClient()
-            throws InterruptedException, ExecutionException {
+        throws InterruptedException, ExecutionException {
 
         ServiceImplementationRequestInput input = ServiceDataUtils
             .buildServiceImplementationRequestInputTerminationPointResource(OpenRoadmInterfacesImpl.CLIENT_TOKEN);
@@ -174,7 +176,7 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
 
     @Test
     public void serviceImplementationTerminationPointAsResourceNoMapping()
-            throws InterruptedException, ExecutionException {
+        throws InterruptedException, ExecutionException {
 
         String[] interfaceTokens = {
             OpenRoadmInterfacesImpl.NETWORK_TOKEN,
@@ -192,7 +194,7 @@ public class RendererServiceOperationsImplTest extends AbstractTest {
             ServiceImplementationRequestInput input = ServiceDataUtils
                 .buildServiceImplementationRequestInputTerminationPointResource(tpToken);
             ServiceImplementationRequestOutput result =
-                    this.rendererServiceOperations.serviceImplementation(input).get();
+                this.rendererServiceOperations.serviceImplementation(input).get();
             Assert.assertEquals(ResponseCodes.RESPONSE_FAILED,
                     result.getConfigurationResponseCommon().getResponseCode());
         }
index 519f7f58d9f3e47d3c894b66d2a91296bacada19..94d35a04e1b3e5a64ea9028428ef2989b962f735 100644 (file)
@@ -28,6 +28,7 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.olm.rev17
 import org.opendaylight.yangtools.yang.common.RpcResult;
 import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
 
+
 public class OlmServiceStub implements TransportpceOlmService {
 
     @Override public ListenableFuture<RpcResult<CalculateSpanlossCurrentOutput>> calculateSpanlossCurrent(
index 3431e94d77fc40901703456edf3b7888f259923b..37743a8013d8bc43ab5b0dad0c966458b3cfef90 100644 (file)
@@ -31,6 +31,7 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
 import org.opendaylight.yangtools.yang.common.RpcResult;
 import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
 
+
 public final class MountPointUtils {
 
     public static MountPointStub getMountPoint(List<Ports> ports, DataBroker dataBroker) {
index ebe2d86f9a789c34074dcfb8cf2bb179b93823cd..30fa1bfca8fdc9395ed8cce5043cd96e2be4756a 100644 (file)
@@ -113,9 +113,11 @@ public final class ServiceDataUtils {
         org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource
             .resource.resource.NodeBuilder nodesBuilder = new NodeBuilder();
         org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource
-            .resource.resource.Node node1 = nodesBuilder.setNodeId("XPONDER-1-2").build();
+            .resource.resource.Node node1 = nodesBuilder
+            .setNodeId("XPONDER-1-2").build();
         org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource
-            .resource.resource.Node node2 = nodesBuilder.setNodeId("XPONDER-1-2").build();
+            .resource.resource.Node node2 = nodesBuilder
+            .setNodeId("XPONDER-1-2").build();
         AToZ atoZ = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
             .setResource(node1).build()).build();
         AToZ atoZ2 = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
@@ -152,7 +154,9 @@ public final class ServiceDataUtils {
         Integer atozId = 1;
         for (String nodeId : nodeIds) {
             for (String otherNodeId : nodeIds) {
-                TerminationPoint terminationPoint = terminationPointBuilder.setTpNodeId(nodeId + '-' + tpId)
+                TerminationPoint terminationPoint = terminationPointBuilder
+                    .setTpNodeId(nodeId + '-'
+                            + tpId)
                         .setTpId(tpId).build();
                 AToZ atoZ = new AToZBuilder().setId(atozId.toString())
                     .withKey(new AToZKey(atozId.toString())).setResource(new ResourceBuilder()
@@ -172,7 +176,9 @@ public final class ServiceDataUtils {
         Integer ztoaId = 1;
         for (String nodeId : nodeIds) {
             for (String otherNodeId : nodeIds) {
-                TerminationPoint terminationPoint = terminationPointBuilder.setTpNodeId(nodeId + '-' + tpId)
+                TerminationPoint terminationPoint = terminationPointBuilder
+                    .setTpNodeId(nodeId + '-'
+                            + tpId)
                         .setTpId(tpId).build();
                 ZToA ztoA = new ZToABuilder().setId(ztoaId.toString())
                     .withKey(new ZToAKey(ztoaId.toString())).setResource(new ResourceBuilder()
@@ -194,6 +200,8 @@ public final class ServiceDataUtils {
 
     private static PathDescription createPathDescriptionLinkResource() {
         List<AToZ> atoZList = new ArrayList<AToZ>();
+//        org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource
+//            .resource.resource.NodeBuilder nodesBuilder = new NodeBuilder();
         Link link1 = new LinkBuilder().setLinkId("link 1").build();
         Link link2 = new LinkBuilder().setLinkId("link 2").build();
         AToZ atoZ = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
index 27a5526f23991a021ff36d55ae0c4622bf1623d1..82364ae685a64036ddfde1435e3625763b925051 100644 (file)
@@ -109,7 +109,4 @@ public final class ServiceDeleteDataUtils {
                         .setPortSubSlot("port subslot").setPortType("port type").build())
                     .build());
     }
-
-
-
 }
index d1d7b67344e9092a0be381c02628e8c1926fec75..cd52ccac101f62a31a453ab8140464d2442a4f9e 100644 (file)
@@ -13,33 +13,36 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.device.rev170228.RendererRollbackInputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.device.rev170228.ServicePathInput;
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.device.rev170228.ServicePathInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev171017.ServiceImplementationRequestInput;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev171017.ServiceImplementationRequestInputBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev171017.service.implementation.request.input.PathDescription;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev171017.service.implementation.request.input.PathDescriptionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev171017.service.implementation.request.input.ServiceAEndBuilder;
-import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev171017.service.implementation.request.input.ServiceZEndBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.ServiceFormat;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.service.types.rev161014.service.port.PortBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.AToZDirection;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.AToZDirectionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.ZToADirection;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.ZToADirectionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.atoz.direction.AToZ;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.atoz.direction.AToZBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.atoz.direction.AToZKey;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.ztoa.direction.ZToA;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.ztoa.direction.ZToABuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.path.description.ztoa.direction.ZToAKey;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource.ResourceBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource.resource.resource.Link;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource.resource.resource.LinkBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource.resource.resource.NodeBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource.resource.resource.TerminationPoint;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource.resource.resource.TerminationPointBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.service.endpoint.sp.RxDirectionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.service.endpoint.sp.TxDirectionBuilder;
-import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev171016.service.handler.header.ServiceHandlerHeaderBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.AToZDirection;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.AToZDirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ZToADirection;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ZToADirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.atoz.direction.AToZ;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.atoz.direction.AToZBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.atoz.direction.AToZKey;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ztoa.direction.ZToA;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ztoa.direction.ZToABuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.path.description.ztoa.direction.ZToAKey;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.ResourceBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.Link;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.LinkBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.NodeBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.TerminationPoint;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.TerminationPointBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.link.LinkIdentifierBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.node.NodeIdentifierBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource.resource.resource.termination.point.TerminationPointIdentifierBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev170426.service.endpoint.sp.RxDirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev170426.service.endpoint.sp.TxDirectionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev170426.service.handler.header.ServiceHandlerHeaderBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.ServiceImplementationRequestInput;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.ServiceImplementationRequestInputBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.service.implementation.request.input.PathDescription;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.service.implementation.request.input.PathDescriptionBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.service.implementation.request.input.ServiceAEndBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev170426.service.implementation.request.input.ServiceZEndBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev170907.olm.renderer.input.Nodes;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev170907.olm.renderer.input.NodesBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.common.types.rev170907.olm.renderer.input.NodesKey;
@@ -108,12 +111,14 @@ public final class ServiceImplementationDataUtils {
 
     private static PathDescription createPathDescriptionInvalidResource() {
         List<AToZ> atoZList = new ArrayList<AToZ>();
-        org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource
+        org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource
             .resource.resource.NodeBuilder nodesBuilder = new NodeBuilder();
-        org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource
-            .resource.resource.Node node1 = nodesBuilder.setNodeId("XPONDER-1-2").build();
-        org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev171017.pce.resource
-            .resource.resource.Node node2 = nodesBuilder.setNodeId("XPONDER-1-2").build();
+        org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource
+            .resource.resource.Node node1 = nodesBuilder.setNodeIdentifier(new NodeIdentifierBuilder()
+            .setNodeId("XPONDER-1-2").build()).build();
+        org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource
+            .resource.resource.Node node2 = nodesBuilder.setNodeIdentifier(new NodeIdentifierBuilder()
+            .setNodeId("XPONDER-1-2").build()).build();
         AToZ atoZ = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
             .setResource(node1).build()).build();
         AToZ atoZ2 = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
@@ -146,10 +151,12 @@ public final class ServiceImplementationDataUtils {
     public static PathDescription createPathDescriptionTerminationPointResource(String tpId) {
         List<AToZ> atoZList = new ArrayList<AToZ>();
         TerminationPointBuilder terminationPointBuilder = new TerminationPointBuilder();
-        TerminationPoint terminationPoint = terminationPointBuilder.setTpNodeId("XPONDER-1-2")
-                .setTpId("XPONDER-1-2-" + tpId).build();
-        TerminationPoint terminationPoint2 = terminationPointBuilder.setTpNodeId("XPONDER-1-2")
-                .setTpId("XPONDER-1-2-" + tpId).build();
+        TerminationPoint terminationPoint = terminationPointBuilder
+            .setTerminationPointIdentifier(new TerminationPointIdentifierBuilder().setNodeId("XPONDER-1-2")
+                .setTpId("XPONDER-1-2-" + tpId).build()).build();
+        TerminationPoint terminationPoint2 = terminationPointBuilder
+            .setTerminationPointIdentifier(new TerminationPointIdentifierBuilder().setNodeId("XPONDER-1-2")
+                .setTpId("XPONDER-1-2-" + tpId).build()).build();
         AToZ atoZ = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
             .setResource(terminationPoint).build()).build();
         AToZ atoZ2 = new AToZBuilder().setId("2").withKey(new AToZKey("2")).setResource(new ResourceBuilder()
@@ -181,8 +188,12 @@ public final class ServiceImplementationDataUtils {
 
     private static PathDescription createPathDescriptionLinkResource() {
         List<AToZ> atoZList = new ArrayList<AToZ>();
-        Link link1 = new LinkBuilder().setLinkId("link 1").build();
-        Link link2 = new LinkBuilder().setLinkId("link 2").build();
+        org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev170426.pce.resource
+            .resource.resource.NodeBuilder nodesBuilder = new NodeBuilder();
+        Link link1 = new LinkBuilder().setLinkIdentifier(new LinkIdentifierBuilder().setLinkId("link 1").build())
+            .build();
+        Link link2 = new LinkBuilder().setLinkIdentifier(new LinkIdentifierBuilder().setLinkId("link 2").build())
+            .build();
         AToZ atoZ = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
             .setResource(link1).build()).build();
         AToZ atoZ2 = new AToZBuilder().setId("1").withKey(new AToZKey("1")).setResource(new ResourceBuilder()
index d02fc107bd017b5b66a5ab04b866ec7f28aaf6b3..0b24ce4666bb6009dcf1bbe44bde1638bacd1288 100644 (file)
@@ -14,7 +14,6 @@ import org.opendaylight.transportpce.common.NetworkUtils;
 import org.opendaylight.transportpce.common.device.DeviceTransactionManager;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.Node1;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.TerminationPoint1;
-import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev170929.TerminationPoint1Builder;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev150608.Network;
 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.NetworkKey;
@@ -46,7 +45,6 @@ public final class WaveLengthServiceUtils {
     public static void putTerminationPoint1ToDatastore(String nodeId, String tpId, TerminationPoint1 terminationPoint1,
         DeviceTransactionManager deviceTransactionManager)
         throws ExecutionException, InterruptedException {
-        TerminationPoint1Builder terminationPoint1Builder = new TerminationPoint1Builder();
         TransactionUtils
             .writeTransaction(deviceTransactionManager, nodeId, LogicalDatastoreType.CONFIGURATION,
                 createTerminationPoint1IIDBuilder(nodeId, tpId).build(), terminationPoint1);