Bump to Silicon 26/93026/21
authormanuedelf <emmanuelle.delfour@orange.com>
Mon, 12 Oct 2020 13:11:58 +0000 (15:11 +0200)
committerGuillaume Lambert <guillaume.lambert@orange.com>
Fri, 18 Dec 2020 10:55:09 +0000 (10:55 +0000)
- Update poms
- Update test-common following odl api update
- Fix unit tests (mainly adding mandatory withKey element in data
structure)
- Remove no more relevant unit tests following "withKey()" constraint

NB: the support of ordm devices models was initially flawed by a bug in
    mdsal that has been addressed in
    https://jira.opendaylight.org/browse/MDSAL-600

JIRA: TRNSPRTPCE-345
Signed-off-by: manuedelf <emmanuelle.delfour@orange.com>
Change-Id: I8ed471178dbdc43a2af19a1cfa6cf7d419b4ad89

40 files changed:
api/pom.xml
common/pom.xml
common/src/test/java/org/opendaylight/transportpce/common/device/DeviceTransactionManagerTest.java
common/src/test/java/org/opendaylight/transportpce/common/mapping/PortMappingVersion121Test.java
features/odl-transportpce-inventory/pom.xml
features/odl-transportpce-tapi/pom.xml
features/odl-transportpce/pom.xml
features/pom.xml
inventory/pom.xml
karaf/pom.xml
networkmodel/pom.xml
networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/Rdm2XpdrLink.java
networkmodel/src/main/java/org/opendaylight/transportpce/networkmodel/util/ClliNetwork.java
networkmodel/src/test/java/org/opendaylight/transportpce/networkmodel/util/ClliNetworkTest.java
networkmodel/src/test/java/org/opendaylight/transportpce/networkmodel/util/OpenRoadmOtnTopologyTest.java
networkmodel/src/test/java/org/opendaylight/transportpce/networkmodel/util/test/JsonUtil.java
olm/pom.xml
olm/src/main/java/org/opendaylight/transportpce/olm/power/PowerMgmtVersion121.java
olm/src/main/java/org/opendaylight/transportpce/olm/power/PowerMgmtVersion221.java
olm/src/test/java/org/opendaylight/transportpce/olm/util/OlmTransactionUtils.java
ordmodels/common/pom.xml
ordmodels/device/pom.xml
ordmodels/network/pom.xml
ordmodels/pom.xml
ordmodels/service/pom.xml
pce/pom.xml
pce/src/test/java/org/opendaylight/transportpce/pce/networkanalyzer/PceLinkTest.java
pce/src/test/java/org/opendaylight/transportpce/pce/service/PathComputationServiceImplTest.java
pce/src/test/java/org/opendaylight/transportpce/pce/utils/JsonUtil.java
pce/src/test/java/org/opendaylight/transportpce/pce/utils/NodeUtils.java
pom.xml
renderer/pom.xml
servicehandler/pom.xml
servicehandler/src/main/java/org/opendaylight/transportpce/servicehandler/ModelMappingUtils.java
servicehandler/src/test/java/org/opendaylight/transportpce/servicehandler/ModelMappingUtilsTest.java
tapi/pom.xml
tapimodels/pom.xml
test-common/pom.xml
test-common/src/main/java/org/opendaylight/transportpce/test/DataStoreContextImpl.java
test-common/src/main/java/org/opendaylight/transportpce/test/converter/AbstractDataObjectConverter.java

index 9a324960f439536a956d550d42c8c594631b3927..b04c3cb3117fbada3ff427010682d0b4860ffd99 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index 51a89b6014c97055525657100e97fc2312cb45c0..c0d6062249453c28a4f60aa2f1eb71f86690f003 100644 (file)
@@ -10,7 +10,7 @@
     <parent>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>binding-parent</artifactId>
-        <version>6.0.7</version>
+        <version>7.0.1</version>
         <relativePath />
     </parent>
 
             <dependency>
                 <groupId>org.opendaylight.netconf</groupId>
                 <artifactId>netconf-artifacts</artifactId>
-                <version>1.9.2-SNAPSHOT</version>
+                <version>1.10.0-SNAPSHOT</version>
                 <scope>import</scope>
                 <type>pom</type>
             </dependency>
             <dependency>
                 <groupId>org.opendaylight.mdsal</groupId>
                 <artifactId>mdsal-artifacts</artifactId>
-                <version>6.0.7</version>
+                <version>7.0.1</version>
                 <scope>import</scope>
                 <type>pom</type>
             </dependency>
index c54646eae07a3f0b6f0fe6530b1db7b36bdbcc2e..f4de527a7a5fac771cb23fcb0e4025b9e0ace51e 100644 (file)
@@ -31,6 +31,7 @@ import org.opendaylight.mdsal.binding.api.MountPoint;
 import org.opendaylight.mdsal.binding.api.MountPointService;
 import org.opendaylight.mdsal.binding.api.ReadWriteTransaction;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
+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.networks.Network;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev180226.networks.NetworkBuilder;
 import org.opendaylight.yangtools.util.concurrent.FluentFutures;
@@ -55,7 +56,7 @@ public class DeviceTransactionManagerTest {
     private String defaultDeviceId = "device-id";
     private LogicalDatastoreType defaultDatastore = LogicalDatastoreType.OPERATIONAL;
     private InstanceIdentifier<Network> defaultIid = InstanceIdentifier.create(Network.class);
-    private Network defaultData = new NetworkBuilder().build();
+    private Network defaultData;
     private long defaultTimeout = 1000;
     private TimeUnit defaultTimeUnit = TimeUnit.MILLISECONDS;
 
@@ -65,7 +66,8 @@ public class DeviceTransactionManagerTest {
         Mockito.when(mountPointMock.getService(any())).thenReturn(Optional.of(dataBrokerMock));
         Mockito.when(dataBrokerMock.newReadWriteTransaction()).thenReturn(rwTransactionMock);
         Mockito.when(rwTransactionMock.commit()).thenReturn(FluentFutures.immediateNullFluentFuture());
-
+        NetworkId networkId =  new NetworkId("NETWORK1");
+        defaultData = new NetworkBuilder().setNetworkId(networkId).build();
         this.transactionManager = new DeviceTransactionManagerImpl(mountPointServiceMock, 3000);
     }
 
index ea7e745c9674a8c6e85ac076a42dcdcb14774f9a..5113e603948955db6c617bbb75fa313d69f10412 100644 (file)
@@ -194,6 +194,8 @@ public class PortMappingVersion121Test {
         // mock one degree with bidirectional port
         org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacks circuitPacks =
                 new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacksBuilder()
+                .withKey(new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206
+                        .degree.CircuitPacksKey(Uint32.valueOf(1)))
                         .setCircuitPackName("c1").build();
         Map<
                 org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacksKey,
@@ -207,6 +209,8 @@ public class PortMappingVersion121Test {
         // mock one srg with bidirectional port
         org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacks srgCircuitPacks =
                 new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacksBuilder()
+                .withKey(new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206
+                        .srg.CircuitPacksKey(Uint32.valueOf(2)))
                         .setCircuitPackName("c2").build();
         Map<
                 org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacksKey,
@@ -220,6 +224,8 @@ public class PortMappingVersion121Test {
         // mock one degree with 2 unidirectional ports
         org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacks circuitPacks3 =
                 new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacksBuilder()
+                .withKey(new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206
+                        .degree.CircuitPacksKey(Uint32.valueOf(3)))
                         .setCircuitPackName("c3").build();
         List<org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacks> circuitPacksList3 =
                 new ArrayList<org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacks>();
@@ -237,6 +243,8 @@ public class PortMappingVersion121Test {
         // mock one srg with 2 unidirectional ports
         org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacks srgCircuitPacks4 =
                 new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacksBuilder()
+                .withKey(new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206
+                        .srg.CircuitPacksKey(Uint32.valueOf(4)))
                         .setCircuitPackName("c4").build();
         Map<org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacksKey,
                 org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacks>
@@ -249,6 +257,8 @@ public class PortMappingVersion121Test {
         // mock one degree with unidirectional ports, reverse direction
         org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacks circuitPacks5 =
                 new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacksBuilder()
+                .withKey(new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206
+                        .degree.CircuitPacksKey(Uint32.valueOf(5)))
                         .setCircuitPackName("c5").build();
         List<org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacks> circuitPacksList5 =
                 new ArrayList<org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.degree.CircuitPacks>();
@@ -263,6 +273,8 @@ public class PortMappingVersion121Test {
         // mock one srg with 2 unidirectional ports, reverse direction
         org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacks srgCircuitPacks6 =
                 new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacksBuilder()
+                .withKey(new org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206
+                        .srg.CircuitPacksKey(Uint32.valueOf(6)))
                         .setCircuitPackName("c6").build();
         Map<
                 org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev170206.srg.CircuitPacksKey,
@@ -318,7 +330,8 @@ public class PortMappingVersion121Test {
         when(deviceTransactionManager.getDataFromDevice("node", LogicalDatastoreType.OPERATIONAL, protocoliid,
                 Timeouts.DEVICE_READ_TIMEOUT, Timeouts.DEVICE_READ_TIMEOUT_UNIT)).thenReturn(Optional.of(protocols));
 
-        Interface interfaceObject = new InterfaceBuilder().setSupportingCircuitPackName("sc1").build();
+        Interface interfaceObject = new InterfaceBuilder().withKey(new InterfaceKey("itf1"))
+                .setSupportingCircuitPackName("sc1").build();
         InstanceIdentifier<Interface> interfaceIID = InstanceIdentifier.create(OrgOpenroadmDevice.class)
                 .child(Interface.class, new InterfaceKey(portConfig.getIfName()));
         when(deviceTransactionManager.getDataFromDevice("node", LogicalDatastoreType.OPERATIONAL, interfaceIID,
@@ -425,8 +438,10 @@ public class PortMappingVersion121Test {
                 Timeouts.DEVICE_READ_TIMEOUT, Timeouts.DEVICE_READ_TIMEOUT_UNIT))
                         .thenReturn(Optional.of(ordmSrgObject6));
 
-        Interface ifc1 = new InterfaceBuilder().setType(OpticalTransport.class).build();
-        Interface ifc2 = new InterfaceBuilder().setType(OpenROADMOpticalMultiplex.class).build();
+        Interface ifc1 = new InterfaceBuilder().withKey(new InterfaceKey("ifc1"))
+                .setType(OpticalTransport.class).build();
+        Interface ifc2 = new InterfaceBuilder().withKey(new InterfaceKey("ifc2"))
+                .setType(OpenROADMOpticalMultiplex.class).build();
         try {
             when(openRoadmInterfaces.getInterface("node", "i1")).thenReturn(Optional.of(ifc1));
             when(openRoadmInterfaces.getInterface("node", "i2")).thenReturn(Optional.of(ifc2));
@@ -494,13 +509,15 @@ public class PortMappingVersion121Test {
         final Info info = getInfo();
 
         // mock 1 bidirectional port for network
-        Ports ports = new PortsBuilder().setPortName("p1").setPortQual(Port.PortQual.XpdrNetwork)
+        Ports ports = new PortsBuilder().withKey(new PortsKey("p1")).setPortName("p1")
+                .setPortQual(Port.PortQual.XpdrNetwork)
                 .setPortDirection(Direction.Bidirectional).build();
         List<Ports> portsList = new ArrayList<>();
         portsList.add(ports);
 
         // mock 1 bidirectional port for client
-        Ports ports11 = new PortsBuilder().setPortName("p11").setPortQual(Port.PortQual.XpdrClient)
+        Ports ports11 = new PortsBuilder().withKey(new PortsKey("p11")).setPortName("p11")
+                .setPortQual(Port.PortQual.XpdrClient)
                 .setPortDirection(Direction.Bidirectional).build();
         List<Ports> portsList11 = new ArrayList<>();
         portsList11.add(ports11);
@@ -520,7 +537,8 @@ public class PortMappingVersion121Test {
         portsList4.add(ports5);
 
         // mock connection map
-        Destination destination = new DestinationBuilder().setCircuitPackName("c2").setPortName("p11").build();
+        Destination destination = new DestinationBuilder()
+                .setCircuitPackName("c2").setPortName("p11").build();
         List<Destination> destinationList = new ArrayList<>();
         destinationList.add(destination);
         ConnectionMap connectionMap = getConnectionMap(destinationList);
index 6f9035d76b0b4b7e815bb1da2a4f70b5bd2ce669..cb7ee30106f5ab596593b5f65ae82ce901ef454c 100644 (file)
@@ -9,7 +9,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>single-feature-parent</artifactId>
-        <version>7.0.7</version>
+        <version>8.0.0</version>
         <relativePath/>
     </parent>
 
index 186eb13d69b6e3aab722551d65ba656ebdb18395..21ca534d21e4ebf45f590239d6624dc030f9d0c8 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>single-feature-parent</artifactId>
-    <version>7.0.7</version>
+    <version>8.0.0</version>
     <relativePath/>
   </parent>
 
index 221b01133fb0b48a5af82e5a337cb64d5c391245..4aad74866d93fc0bc2ec9b5eb58cbb935435936e 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>single-feature-parent</artifactId>
-    <version>7.0.7</version>
+    <version>8.0.0</version>
     <relativePath/>
   </parent>
 
@@ -24,11 +24,10 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
   <name>OpenDaylight :: transportpce</name>
 
   <properties>
-    <netconf.version>1.9.2-SNAPSHOT</netconf.version>
+    <netconf.version>1.10.0-SNAPSHOT</netconf.version>
     <configfile.directory>etc/opendaylight/karaf</configfile.directory>
   </properties>
 
-
     <dependencyManagement>
         <dependencies>
             <dependency>
index 580241623d60e69f596d71aa42bbd3a4b3db0d8a..43c9e59dc0946638717903e8a97a66c0b318e780 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>odlparent-lite</artifactId>
-    <version>7.0.7</version>
+    <version>8.0.0</version>
     <relativePath/>
   </parent>
 
index 4c0d853f82608dbabbac6f9c1b58eda5219ddf96..77cfa30b8cc0669804244de32c9bcab8ddfca99e 100644 (file)
@@ -10,7 +10,7 @@
     <parent>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>binding-parent</artifactId>
-        <version>6.0.7</version>
+        <version>7.0.1</version>
         <relativePath />
     </parent>
 
index 98592e12268f3becaddec2f3dceeb50c0f58aead..a2ac221ddf23ed504c527a72b9e36d2cb1fdfe43 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>karaf4-parent</artifactId>
-    <version>7.0.7</version>
+    <version>8.0.0</version>
     <relativePath/>
   </parent>
 
index cc5ef7cbb19d841f27fba2af5743f071bba9bd3c..bd843053c0c2685d2cb6f7d99e5b0ffc1afef934 100644 (file)
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.odlparent</groupId>
     <artifactId>bundle-parent</artifactId>
-    <version>7.0.7</version>
+    <version>8.0.0</version>
     <relativePath/>
   </parent>
 
@@ -27,7 +27,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
       <dependency>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>mdsal-artifacts</artifactId>
-        <version>6.0.7</version>
+        <version>7.0.1</version>
         <scope>import</scope>
         <type>pom</type>
       </dependency>
index a49303462e74522d58b65db17bd21917ee310d3f..5615aafa082f68a170f627c57cc2f825002c72be 100644 (file)
@@ -96,7 +96,7 @@ final class Rdm2XpdrLink {
         Network topoNetowkLayer = createNetworkBuilder(srcNode, srcTp, destNode, destTp, true, xpdrTp).build();
         InstanceIdentifier.InstanceIdentifierBuilder<Network> nwIID =
             InstanceIdentifier.builder(Networks.class).child(Network.class,
-            new NetworkKey(new NetworkId(NetworkUtils.OVERLAY_NETWORK_ID)));
+                new NetworkKey(new NetworkId(NetworkUtils.OVERLAY_NETWORK_ID)));
         WriteTransaction wrtx = dataBroker.newWriteOnlyTransaction();
         wrtx.merge(LogicalDatastoreType.CONFIGURATION, nwIID.build(), topoNetowkLayer);
         FluentFuture<? extends @NonNull CommitInfo> commit = wrtx.commit();
index 5239ae8762ab08a17f5d382b0bdf44f398f0224e..62ddbf444ba7e3901a991320ac0f24f4a4e52cd1 100644 (file)
@@ -39,7 +39,7 @@ public final class ClliNetwork {
          * with nodeId equal to the clli attribute in the device
          * model's info subtree
          */
-        NodeBuilder nodeBldr = new NodeBuilder();
+        NodeBuilder nodeBldr = new NodeBuilder().withKey(new NodeKey(new NodeId("node1")));
         /*
          * create clli node augmentation
          * defined in openroadm-clli-network.yang
index 048e5b695eb81f1ac648dbffd3eaa4ee350fedb3..4b6e449efb3784d2eee5df30749dda5b269e14b2 100644 (file)
@@ -49,13 +49,6 @@ public class ClliNetworkTest {
         assertEquals("Node id should be equals to NodeClliId ", new NodeId("NodeClliId"), createdNode.getNodeId());
     }
 
-    @Test
-    public void createNodeWithNullClliTest() {
-        NodeInfoBuilder nodeBldr = computeNodeInfoBuilderWithoutClli();
-        Node createdNode = ClliNetwork.createNode("XPDRA01", nodeBldr.build());
-        assertNull("Node id should be null", createdNode.getNodeId());
-    }
-
     private NodeInfoBuilder computeNodeInfoBuilder() {
         NodeInfoBuilder nodeBldr = new NodeInfoBuilder()
             .setNodeClli("NodeClliId")
index b54c0c1c8240aea7f36019ec0e44523169228427..df155cebfc60c23e271c5a1f6e529fb20e97d19e 100644 (file)
@@ -856,7 +856,7 @@ public class OpenRoadmOtnTopologyTest {
                 assertThat(
                     nbl.getTpList(),
                     containsInAnyOrder(new TpId("XPDR1-NETWORK1"),
-                    new TpId("XPDR1-CLIENT" + nb)));
+                        new TpId("XPDR1-CLIENT" + nb)));
             }
         } else if (xpdrNb.equals(Uint16.valueOf(2))) {
             assertEquals(
index 3be693f1242e7c91f1576e056889ab84a5958b4b..4b29f291203a8db2aac94f68f2813b026bf9e578 100644 (file)
@@ -12,11 +12,11 @@ import java.io.IOException;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.ServiceLoader;
-import org.opendaylight.binding.runtime.api.BindingRuntimeContext;
-import org.opendaylight.binding.runtime.spi.BindingRuntimeHelpers;
 import org.opendaylight.mdsal.binding.dom.adapter.CurrentAdapterSerializer;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer;
 import org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext;
+import org.opendaylight.mdsal.binding.runtime.api.BindingRuntimeContext;
+import org.opendaylight.mdsal.binding.runtime.spi.BindingRuntimeHelpers;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.YangModelBindingProvider;
 import org.opendaylight.yangtools.yang.binding.YangModuleInfo;
index b69d671d7d2191dae6fed3131ef6c6097e3f545b..a0c43588d6ed9b9705a99282f0e92d564cb3f325 100644 (file)
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index 86de6863b0ce77cb3c37383f3a67e4c7f3994bd7..d021845b09a640eee5b3904aeb4e51e617fb5a5d 100644 (file)
@@ -159,9 +159,7 @@ public final class PowerMgmtVersion121 {
                 org.opendaylight.yang.gen.v1.http.org.openroadm.optical.channel.interfaces.rev161014
                         .Interface1.class).getOch());
         ochBuilder.setTransmitPower(new PowerDBm(txPower));
-        ochInterfaceBuilder.addAugmentation(
-                org.opendaylight.yang.gen.v1.http.org.openroadm.optical.channel.interfaces.rev161014
-                        .Interface1.class, new Interface1Builder().setOch(ochBuilder.build()).build());
+        ochInterfaceBuilder.addAugmentation(new Interface1Builder().setOch(ochBuilder.build()).build());
         Future<Optional<DeviceTransaction>> deviceTxFuture = deviceTransactionManager.getDeviceTransaction(nodeId);
         DeviceTransaction deviceTx;
         try {
index f202dbc82dec080d347b5f55a24c6e30c40cf083..515cfbe1f5f488d68fa6522a4924246cd8c9c800 100644 (file)
@@ -161,8 +161,7 @@ public final class PowerMgmtVersion221 {
         OchBuilder ochBuilder = new OchBuilder(ochInterfaceBuilder.augmentation(
                 Interface1.class).getOch());
         ochBuilder.setTransmitPower(new PowerDBm(txPower));
-        ochInterfaceBuilder.addAugmentation(
-                Interface1.class, new Interface1Builder().setOch(ochBuilder.build()).build());
+        ochInterfaceBuilder.addAugmentation(new Interface1Builder().setOch(ochBuilder.build()).build());
         Future<Optional<DeviceTransaction>> deviceTxFuture = deviceTransactionManager.getDeviceTransaction(nodeId);
         DeviceTransaction deviceTx;
         try {
index a018dc6334ec158da6a7bafe5a44b8fc678c8653..9d092b79ef14253d9a8ad424f01c3f04618738d2 100644 (file)
@@ -21,6 +21,8 @@ import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmappi
 import org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.portmapping.rev201012.network.nodes.MappingBuilder;
 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.common.types.rev181019.Direction;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.common.types.rev181019.Location;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev181019.interfaces.grp.Interface;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev181019.interfaces.grp.InterfaceKey;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.device.rev181019.org.openroadm.device.container.OrgOpenroadmDevice;
@@ -40,11 +42,15 @@ import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.CurrentPmLis
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.CurrentPmListBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.current.pm.group.CurrentPm;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.current.pm.group.CurrentPmBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.current.pm.group.CurrentPmKey;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.current.pm.list.CurrentPmEntry;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.current.pm.list.CurrentPmEntryBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.current.pm.val.group.Measurement;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.current.pm.val.group.MeasurementBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.rev181019.current.pm.val.group.MeasurementKey;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev171215.PmDataType;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev171215.PmGranularity;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev171215.PmNamesEnum;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev171215.Validity;
 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;
@@ -54,6 +60,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev
 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.rev180226.networks.network.node.SupportingNodeKey;
 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;
@@ -87,12 +94,14 @@ public final class OlmTransactionUtils {
 
         Map<LinkConcatenationKey,LinkConcatenation> linkConcentationValues = new HashMap<>();
         LinkConcatenation linkConcatenation = new LinkConcatenationBuilder()
+                .withKey(new LinkConcatenationKey(Uint32.valueOf(1)))
                 .setFiberType(LinkConcatenation.FiberType.Truewave)
                 .setPmd(new FiberPmd(BigDecimal.ONE))
                 .setSRLGId(Uint32.valueOf(1))
                 .setSRLGLength(Uint32.valueOf(1))
                 .build();
         LinkConcatenation linkConcatenation2 = new LinkConcatenationBuilder()
+                .withKey(new LinkConcatenationKey(Uint32.valueOf(2)))
                 .setFiberType(LinkConcatenation.FiberType.Truewave)
                 .setPmd(new FiberPmd(BigDecimal.ONE))
                 .setSRLGId(Uint32.valueOf(1))
@@ -103,12 +112,16 @@ public final class OlmTransactionUtils {
         // create 2 openroadm-topology degree nodes, end points of the link to be
         // measured;
         SupportingNode supportingNode4RoadmA = new SupportingNodeBuilder()
+                .withKey(new SupportingNodeKey(new NetworkId("openroadm-network"),
+                        new NodeId("ROADM-A1")))
                 .setNetworkRef(new NetworkId("openroadm-network"))
                 .setNodeRef(new NodeId("ROADM-A1")).build();
         Node ietfNodeA = new NodeBuilder().setNodeId(new NodeId("ROADM-A1-DEG2"))
                 .setSupportingNode(Map.of(supportingNode4RoadmA.key(),supportingNode4RoadmA))
                 .build();
         SupportingNode supportingNode4RoadmC = new SupportingNodeBuilder()
+                .withKey(new SupportingNodeKey(new NetworkId("openroadm-network"),
+                        new NodeId("ROADM-C1")))
                 .setNetworkRef(new NetworkId("openroadm-network"))
                 .setNodeRef(new NodeId("ROADM-C1")).build();
         Node ietfNodeC = new NodeBuilder().setNodeId(new NodeId("ROADM-C1-DEG1"))
@@ -213,11 +226,14 @@ public final class OlmTransactionUtils {
 
     public static Optional<CurrentPmList> getCurrentPmListA() {
         Measurement measurementA = new MeasurementBuilder()
+                .withKey(new MeasurementKey(PmGranularity._15min))
                 .setGranularity(org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev171215.PmGranularity._15min)
                 .setPmParameterValue(new PmDataType(new BigDecimal("-3.5")))
                 .setValidity(Validity.Complete)
                 .build();
         CurrentPm cpA = new CurrentPmBuilder()
+                .withKey(new CurrentPmKey(Direction.Bidirectional,
+                        "", Location.NotApplicable, PmNamesEnum.OpticalPowerOutput))
             .setType(org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev171215.PmNamesEnum.OpticalPowerOutput)
             .setMeasurement(Map.of(measurementA.key(),measurementA))
             .build();
@@ -242,6 +258,8 @@ public final class OlmTransactionUtils {
                 .setValidity(Validity.Complete)
                 .build();
         CurrentPm cpC = new CurrentPmBuilder()
+                .withKey(new CurrentPmKey(Direction.Bidirectional,
+                        "", Location.NotApplicable, PmNamesEnum.OpticalPowerInput))
             .setType(org.opendaylight.yang.gen.v1.http.org.openroadm.pm.types.rev171215.PmNamesEnum.OpticalPowerInput)
             .setMeasurement(Map.of(measurementC.key(),measurementC))
             .build();
index ef91d56d532efe3193b48cc5762c87daff095f38..59baa0e305c60b63f50a1e5c8783356dd2eadfe2 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index 956d3bdc4307864f6cde0f73084b6df7505155fb..3851059037f807c8bf3b629f96fdf4b4be256ba7 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
@@ -26,7 +26,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
       <dependency>
         <groupId>org.opendaylight.netconf</groupId>
         <artifactId>netconf-artifacts</artifactId>
-        <version>1.9.2-SNAPSHOT</version>
+        <version>1.10.0-SNAPSHOT</version>
         <scope>import</scope>
         <type>pom</type>
       </dependency>
index b88ac695c91ec271337c929867338381927abce4..e66553ae741265700f456d1b7782bddd61f2ca0e 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index b64d4d354cd2947e62f8581e79748f93db3a5249..3904d2aebab4983094a4124a2ad5b13609710644 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index c4165b4eb083ed5d0b2e96aa4d81d23577ba52e7..211fad2c21f5a827cec809d619fd94a83e73ab54 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index dae33aef8554c9eec059f7ef9718b3c8cb1aa5c5..84de5b4da9dc30ce0af1027a23fde6aa992b7c44 100644 (file)
@@ -14,7 +14,7 @@
     <parent>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>binding-parent</artifactId>
-        <version>6.0.7</version>
+        <version>7.0.1</version>
         <relativePath />
     </parent>
 
index db7ce0f65cb5b06ecc0f9b00e744a0b6271123d2..20dcacef7648f5a89f0783370320c40f433262e5 100644 (file)
@@ -21,6 +21,7 @@ import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.
 import org.opendaylight.yang.gen.v1.http.org.openroadm.common.network.rev200529.TerminationPoint1Builder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev200529.span.attributes.LinkConcatenation;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev200529.span.attributes.LinkConcatenationBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.link.rev200529.span.attributes.LinkConcatenationKey;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.link.OMSAttributesBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.network.topology.rev200529.networks.network.link.oms.attributes.SpanBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.network.types.rev200529.OpenroadmLinkType;
@@ -38,6 +39,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.rev
 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.Node1;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.Node1Builder;
+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;
@@ -45,6 +47,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.networks.network.link.SourceBuilder;
 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.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.node.TerminationPointKey;
 import org.opendaylight.yangtools.yang.common.Uint32;
 
 
@@ -129,7 +132,7 @@ public class PceLinkTest extends AbstractTest {
         pceLink = new PceLink(link, pceOpticalNode, pceOpticalNode);
         Assert.assertNotNull(MapUtils.getOmsAttributesSpan(link));
         Assert.assertNotNull(pceLink.calcSpanOSNR());
-        Assert.assertEquals(0, pceLink.getsrlgList().size());
+        Assert.assertEquals(1, pceLink.getsrlgList().size());
         Assert.assertTrue(7.857119000000001 == pceLink.calcSpanOSNR());
         Assert.assertNull(pceLink.getOppositeLink());
         Assert.assertNull(pceLink.getOppositeLink());
@@ -196,6 +199,7 @@ public class PceLinkTest extends AbstractTest {
 
         //For setting up attributes for openRoadm augment
         LinkConcatenation linkConcatenation = new LinkConcatenationBuilder()
+                .withKey(new LinkConcatenationKey(Uint32.valueOf(1)))
                 .setSRLGLength(Uint32.valueOf(20))
                 .setFiberType(LinkConcatenation.FiberType.Dsf)
                 .build();
@@ -265,7 +269,8 @@ public class PceLinkTest extends AbstractTest {
 
 
         //update tp of nodes
-        TerminationPointBuilder xpdrTpBldr = new TerminationPointBuilder();
+        TerminationPointBuilder xpdrTpBldr = new TerminationPointBuilder()
+                .withKey(new TerminationPointKey(new TpId("xpdr")));
         TerminationPoint1Builder tp1Bldr = new TerminationPoint1Builder();
 
         tp1Bldr.setTpType(OpenroadmTpType.XPONDERNETWORK);
index 18c97cc697ba37f142daec37ad19af1b5c9fdc3b..86a2f9e075123269c73fb1aa05b6b6a5cb7c52f7 100644 (file)
@@ -32,8 +32,10 @@ import org.opendaylight.yang.gen.v1.gnpy.path.rev200909.generic.path.properties.
 import org.opendaylight.yang.gen.v1.gnpy.path.rev200909.no.path.info.NoPathBuilder;
 import org.opendaylight.yang.gen.v1.gnpy.path.rev200909.result.Response;
 import org.opendaylight.yang.gen.v1.gnpy.path.rev200909.result.ResponseBuilder;
+import org.opendaylight.yang.gen.v1.gnpy.path.rev200909.result.ResponseKey;
 import org.opendaylight.yang.gen.v1.gnpy.path.rev200909.result.response.response.type.NoPathCaseBuilder;
 import org.opendaylight.yang.gen.v1.gnpy.path.rev200909.result.response.response.type.PathCaseBuilder;
+import org.opendaylight.yangtools.yang.common.Uint32;
 
 public class PathComputationServiceImplTest extends AbstractTest {
 
@@ -65,7 +67,8 @@ public class PathComputationServiceImplTest extends AbstractTest {
 
     @Test
     public void testPathComputationRequestNoPath() {
-        Response response = new ResponseBuilder().setResponseType(new NoPathCaseBuilder()
+        Response response = new ResponseBuilder()
+                .withKey(new ResponseKey(Uint32.valueOf(1))).setResponseType(new NoPathCaseBuilder()
                 .setNoPath(new NoPathBuilder().setNoPath("no path").build()).build()).build();
 
         pathComputationServiceImpl.generateGnpyResponse(response,"path");
@@ -79,7 +82,8 @@ public class PathComputationServiceImplTest extends AbstractTest {
         PathMetric pathMetric = new PathMetricBuilder()
                 .setAccumulativeValue(new BigDecimal(21))
                 .setMetricType(PathBandwidth.class).build();
-        Response response = new ResponseBuilder().setResponseType(new PathCaseBuilder()
+        Response response = new ResponseBuilder()
+                .withKey(new ResponseKey(Uint32.valueOf(1))).setResponseType(new PathCaseBuilder()
                 .setPathProperties(new PathPropertiesBuilder().setPathMetric(Map.of(pathMetric.key(),pathMetric))
                 .build()).build()).build();
 
index f53a3ad970bde86deed7242695ffcfcea23e803b..b729a534b15d57e3942901586777a0089eeba50f 100644 (file)
@@ -12,10 +12,10 @@ import java.io.IOException;
 import java.util.LinkedList;
 import java.util.List;
 import java.util.ServiceLoader;
-import org.opendaylight.binding.runtime.api.BindingRuntimeContext;
-import org.opendaylight.binding.runtime.spi.BindingRuntimeHelpers;
 import org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext;
 import org.opendaylight.mdsal.binding.dom.codec.spi.BindingDOMCodecServices;
+import org.opendaylight.mdsal.binding.runtime.api.BindingRuntimeContext;
+import org.opendaylight.mdsal.binding.runtime.spi.BindingRuntimeHelpers;
 import org.opendaylight.yangtools.yang.binding.DataObject;
 import org.opendaylight.yangtools.yang.binding.YangModelBindingProvider;
 import org.opendaylight.yangtools.yang.binding.YangModuleInfo;
index 1ffb643295f4c89abb9b82f39038d9a30f888c8c..87909027bd9af0e098a77b6044ef48d572766d95 100644 (file)
@@ -70,6 +70,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.networks.network.link.SourceBuilder;
 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.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.network.topology.rev180226.networks.network.node.TerminationPointKey;
 import org.opendaylight.yangtools.yang.binding.Augmentation;
 import org.opendaylight.yangtools.yang.common.Uint16;
 import org.opendaylight.yangtools.yang.common.Uint32;
@@ -140,7 +141,8 @@ public class NodeUtils {
 
 
         //update tp of nodes
-        TerminationPointBuilder xpdrTpBldr = new TerminationPointBuilder();
+        TerminationPointBuilder xpdrTpBldr = new TerminationPointBuilder()
+                .withKey(new TerminationPointKey(new TpId("xpdr")));
         TerminationPoint1Builder tp1Bldr = new TerminationPoint1Builder();
 
         tp1Bldr.setTpType(OpenroadmTpType.XPONDERNETWORK);
diff --git a/pom.xml b/pom.xml
index 6321a72e0ca1571a0894f325457493f345822dc1..207b3ca751e7fa0d18eec8f447d9700e516cb679 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>odlparent</artifactId>
-        <version>7.0.7</version>
+        <version>8.0.0</version>
         <relativePath/>
     </parent>
 
index 617844afbe910519012c01a2f937f2762fe2a5ee..c8b77b555d40c0bda0aa26273fa4c720cb2e3103 100644 (file)
@@ -13,7 +13,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index e1416b6cefcb8f054359c7dc5746059a4b2c9a9e..cd8933fc2964a6f166b085165869ed0c8d0ad945 100644 (file)
@@ -15,7 +15,7 @@ Author: Martial Coulibaly <martial.coulibaly@gfi.com> on behalf of Orange
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index e21deef1ba8e26f8b95a7b7b081a9fc5032448ac..53faa3fc405c8934ebdaf27259dc7fee9d2b3a57 100644 (file)
@@ -51,6 +51,7 @@ import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.TempSer
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.TempServiceDeleteOutputBuilder;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.Services;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.ServicesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.ServicesKey;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.routing.constraints.sp.HardConstraintsBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.routing.constraints.rev171017.routing.constraints.sp.SoftConstraintsBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.service.endpoint.sp.RxDirection;
@@ -61,10 +62,14 @@ import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.service.path.PathDescriptionBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev171017.service.path.list.ServicePaths;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev171017.service.path.list.ServicePathsBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev171017.service.path.list.ServicePathsKey;
 import org.opendaylight.yangtools.yang.common.RpcResult;
 import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 public final class ModelMappingUtils {
+    private static final Logger LOG = LoggerFactory.getLogger(ModelMappingUtils.class);
 
     private ModelMappingUtils() {
     }
@@ -336,6 +341,13 @@ public final class ModelMappingUtils {
                 .setHardConstraints(serviceReconfigureInput.getHardConstraints())
                 .setSoftConstraints(serviceReconfigureInput.getSoftConstraints())
                 .setLifecycleState(LifecycleState.Planned).setServiceAEnd(aend).setServiceZEnd(zend);
+        } else {
+            //FIXME: Because of Silicon, we cannot have empty key.
+            //it's this case possible ? There is a Junit test covering null
+            //temporary workaround as now there is a null key check done by yangtools.
+            //Functional review is needed
+            LOG.warn("ServiceCreateInput and ServiceReconfigureInput are null");
+            service.withKey(new ServicesKey("unknown"));
         }
         return service.build();
     }
@@ -419,6 +431,13 @@ public final class ModelMappingUtils {
                     new PathDescriptionBuilder(output.getResponseParameters().getPathDescription());
                 servicePathBuilder.setPathDescription(pathDescBuilder.build());
             }
+        } else {
+            //FIXME: Because of Silicon, we cannot have empty key.
+            //it's this case possible ? There is a Junit test covering null
+            //temporary workaround as now there is a null key check done by yangtools.
+            //Functional review is needed
+            LOG.warn("ServiceInput is null");
+            servicePathBuilder.withKey(new ServicePathsKey("unknown"));
         }
 
         return servicePathBuilder.build();
index f997a227d23831e897e7cf5ba19b32802d33d1c0..0337874f6455585c07bec8de1199ce087c942eb9 100644 (file)
@@ -55,6 +55,7 @@ import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.TempSer
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.TempServiceCreateOutput;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.Services;
 import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.ServicesBuilder;
+import org.opendaylight.yang.gen.v1.http.org.openroadm.service.rev190531.service.list.ServicesKey;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev200629.path.description.AToZDirectionBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.pathdescription.rev200629.path.description.ZToADirectionBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.response.parameters.sp.ResponseParameters;
@@ -62,6 +63,7 @@ import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.service.types.rev200128.response.parameters.sp.response.parameters.PathDescriptionBuilder;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev171017.service.path.list.ServicePaths;
 import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev171017.service.path.list.ServicePathsBuilder;
+import org.opendaylight.yang.gen.v1.http.org.transportpce.b.c._interface.servicepath.rev171017.service.path.list.ServicePathsKey;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.DateAndTime;
 import org.opendaylight.yangtools.yang.common.RpcResult;
 import org.opendaylight.yangtools.yang.common.Uint32;
@@ -134,9 +136,10 @@ public class ModelMappingUtilsTest extends AbstractTest {
     }
 
     @Test
+    //TODO : is this unit test relevant ?
     public void mappingServicesNullServiceCreateInput() {
         Services services = ModelMappingUtils.mappingServices(null, null);
-        Assert.assertEquals(new ServicesBuilder().build(), services);
+        Assert.assertEquals(new ServicesBuilder().withKey(new ServicesKey("unknown")).build(), services);
     }
 
     @Test
@@ -153,9 +156,10 @@ public class ModelMappingUtilsTest extends AbstractTest {
     }
 
     @Test
+    //TODO : is this unit test relevant ?
     public void mappingServicesPathNullServiceCreateInput() {
         ServicePaths services = ModelMappingUtils.mappingServicePaths(null, buildPathComputationOutput());
-        Assert.assertEquals(new ServicePathsBuilder().build(), services);
+        Assert.assertEquals(new ServicePathsBuilder().withKey(new ServicePathsKey("unknown")).build(), services);
     }
 
     @Test
@@ -180,7 +184,8 @@ public class ModelMappingUtilsTest extends AbstractTest {
     public void createServiceDeleteInputWithServiceRerouteInput() {
         ServiceRerouteInput serviceRerouteinput = new ServiceRerouteInputBuilder().setServiceName("reroute").build();
         Services services = new ServicesBuilder()
-            .setSdncRequestHeader(new SdncRequestHeaderBuilder().setRequestId("123").build()).build();
+                .withKey(new ServicesKey("reroute"))
+                .setSdncRequestHeader(new SdncRequestHeaderBuilder().setRequestId("123").build()).build();
         org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev200520.ServiceDeleteInput
             serviceDeleteInput =
                     ModelMappingUtils.createServiceDeleteInput(serviceRerouteinput, services);
@@ -202,7 +207,8 @@ public class ModelMappingUtilsTest extends AbstractTest {
     @Test
     public void createServiceDeleteInputWithServiceRestorationInput() {
         Services services = new ServicesBuilder()
-            .setSdncRequestHeader(new SdncRequestHeaderBuilder().setRequestId("123").build()).build();
+                .withKey(new ServicesKey("rest"))
+                .setSdncRequestHeader(new SdncRequestHeaderBuilder().setRequestId("123").build()).build();
         ServiceRestorationInput serviceRestorationInput =
             new ServiceRestorationInputBuilder().setServiceName("rest").build();
         org.opendaylight.yang.gen.v1.http.org.opendaylight.transportpce.renderer.rev200520.ServiceDeleteInput
index 5fff3a21f973ee61f9b0a33786e4b0a567cc9068..87a7f96f219f8797d42712bbc691f9c0602ba9d7 100644 (file)
@@ -15,7 +15,7 @@ Author: Martial Coulibaly <martial.coulibaly@gfi.com> on behalf of Orange
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
@@ -29,7 +29,7 @@ Author: Martial Coulibaly <martial.coulibaly@gfi.com> on behalf of Orange
       <dependency>
         <groupId>org.opendaylight.mdsal</groupId>
         <artifactId>mdsal-artifacts</artifactId>
-        <version>6.0.7</version>
+        <version>7.0.1</version>
         <scope>import</scope>
         <type>pom</type>
       </dependency>
index 4abfba130d3f9f2c0abd544ea059761ba44060bb..877eee05aa44536217b7040175aba8779233a9d7 100644 (file)
@@ -12,7 +12,7 @@ and is available at http://www.eclipse.org/legal/epl-v10.html
   <parent>
     <groupId>org.opendaylight.mdsal</groupId>
     <artifactId>binding-parent</artifactId>
-    <version>6.0.7</version>
+    <version>7.0.1</version>
     <relativePath/>
   </parent>
 
index bd4cd32fc95588cb041ba0272a638fa80c2c339f..2ca4c842daabc073710ecc68b709992f588afa9f 100644 (file)
@@ -12,7 +12,7 @@
     <parent>
         <groupId>org.opendaylight.odlparent</groupId>
         <artifactId>bundle-parent</artifactId>
-        <version>7.0.7</version>
+        <version>8.0.0</version>
         <relativePath />
     </parent>
 
             <dependency>
                 <groupId>org.opendaylight.netconf</groupId>
                 <artifactId>netconf-artifacts</artifactId>
-                <version>1.9.2-SNAPSHOT</version>
+                <version>1.10.0-SNAPSHOT</version>
                 <scope>import</scope>
                 <type>pom</type>
             </dependency>
             <dependency>
                 <groupId>org.opendaylight.mdsal</groupId>
                 <artifactId>mdsal-artifacts</artifactId>
-                <version>6.0.7</version>
+                <version>7.0.1</version>
                 <scope>import</scope>
                 <type>pom</type>
             </dependency>
index 42719c8b30c1d0cc01998298d4ad193f1e3d15f1..0829a4ac3eabe28aaa35f234b22fad36c68eeebe 100644 (file)
@@ -14,7 +14,6 @@ import java.util.List;
 import java.util.Map;
 import java.util.ServiceLoader;
 import java.util.concurrent.Executors;
-import org.opendaylight.binding.runtime.spi.BindingRuntimeHelpers;
 import org.opendaylight.mdsal.binding.api.DataBroker;
 import org.opendaylight.mdsal.binding.api.NotificationPublishService;
 import org.opendaylight.mdsal.binding.api.NotificationService;
@@ -23,6 +22,7 @@ import org.opendaylight.mdsal.binding.dom.adapter.ConstantAdapterContext;
 import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer;
 import org.opendaylight.mdsal.binding.dom.codec.impl.BindingCodecContext;
 import org.opendaylight.mdsal.binding.dom.codec.spi.BindingDOMCodecServices;
+import org.opendaylight.mdsal.binding.runtime.spi.BindingRuntimeHelpers;
 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.mdsal.dom.api.DOMDataBroker;
 import org.opendaylight.mdsal.dom.broker.DOMNotificationRouter;
index 2d61d31cb60a6d8b6c2c134b62ff1daf917c7daa..7e6dfe271ac44cf78e7718914319f8f550334916 100644 (file)
@@ -7,6 +7,8 @@
  */
 package org.opendaylight.transportpce.test.converter;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.Optional;
@@ -23,6 +25,7 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNodes;
 import org.opendaylight.yangtools.yang.model.api.EffectiveModelContext;
 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
+import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Absolute;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -106,7 +109,10 @@ public abstract class AbstractDataObjectConverter implements DataObjectConverter
                     normalizedNode.getClass().getSimpleName());
             return Optional.empty();
         }
-        T rpcDataObject = (T) codecRegistry.fromNormalizedNodeRpcData(rpcSchemaPath, (ContainerNode) normalizedNode);
+        List<QName> qnameList = new ArrayList<>();
+        rpcSchemaPath.getPathFromRoot().forEach(qnameList::add);
+        T rpcDataObject = (T) codecRegistry
+                .fromNormalizedNodeRpcData(Absolute.of(qnameList), (ContainerNode) normalizedNode);
         return Optional.ofNullable(rpcDataObject);
     }