Typedef changes in SFC project 79/28579/5
authorKeith Burns (alagalah) <alagalah@gmail.com>
Tue, 20 Oct 2015 05:16:08 +0000 (22:16 -0700)
committerMartin Sunal <msunal@cisco.com>
Thu, 22 Oct 2015 09:37:17 +0000 (09:37 +0000)
Change-Id: I54d60ee5d0d55150e371ef2e804dd792e921c7be
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
renderers/ofoverlay/src/main/java/org/opendaylight/groupbasedpolicy/renderer/ofoverlay/SfcManager.java
renderers/ofoverlay/src/main/java/org/opendaylight/groupbasedpolicy/renderer/ofoverlay/sf/ChainAction.java
renderers/ofoverlay/src/main/java/org/opendaylight/groupbasedpolicy/renderer/ofoverlay/sfcutils/SfcIidFactory.java
renderers/ofoverlay/src/test/java/org/opendaylight/groupbasedpolicy/renderer/ofoverlay/sf/ChainActionTest.java
renderers/ofoverlay/src/test/java/org/opendaylight/groupbasedpolicy/renderer/ofoverlay/sfcutils/SfcIidFactoryTest.java

index 81e51fb7f1a138d8833cbff09c79d3a2c5348cd6..ba622d4b070304769f4b0cb9c409bc797f254d03 100644 (file)
@@ -21,6 +21,7 @@ import org.opendaylight.groupbasedpolicy.resolver.PolicyResolver;
 import org.opendaylight.sfc.provider.SfcProviderRpc;
 import org.opendaylight.sfc.provider.api.SfcProviderServiceChainAPI;
 import org.opendaylight.sfc.provider.api.SfcProviderServicePathAPI;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.SfcName;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.ReadRenderedServicePathFirstHopInputBuilder;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.ReadRenderedServicePathFirstHopOutput;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.rendered.service.path.first.hop.info.RenderedServicePathFirstHop;
@@ -368,8 +369,8 @@ public class SfcManager implements AutoCloseable, DataChangeListener {
             if (pv == null) return;
 
             LOG.trace("Invoking RPC for chain {}", pv.getStringValue());
-            String chainName=pv.getStringValue();
-            ServiceFunctionChain chain = SfcProviderServiceChainAPI.readServiceFunctionChain(pv.getStringValue());
+            SfcName chainName=new SfcName(pv.getStringValue());
+            ServiceFunctionChain chain = SfcProviderServiceChainAPI.readServiceFunctionChain(chainName);
             ServiceFunctionPaths paths = SfcProviderServicePathAPI.readAllServiceFunctionPaths();
             for(ServiceFunctionPath path: paths.getServiceFunctionPath()) {
                 if(path.getServiceChainName().equals(chainName)) {
index 43adcb0700371ba928a9ebf07f7d5b1d6b14b77c..73b1e908d08e9db5a66126736cdbb41fe220efce 100755 (executable)
@@ -36,6 +36,8 @@ import org.opendaylight.groupbasedpolicy.util.DataStoreHelper;
 import org.opendaylight.sfc.provider.api.SfcProviderRenderedPathAPI;
 import org.opendaylight.sfc.provider.api.SfcProviderServiceChainAPI;
 import org.opendaylight.sfc.provider.api.SfcProviderServicePathAPI;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.RspName;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.SfcName;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.CreateRenderedPathInput;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.CreateRenderedPathInputBuilder;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.rendered.service.path.first.hop.info.RenderedServicePathFirstHop;
@@ -143,13 +145,13 @@ public class ChainAction extends Action {
          * if srcEp is in consumer EPG use "rspName"
          * else srcEp is in provider EPG, "rspName-Reverse".
          */
-        ServiceFunctionPath sfcPath = getSfcPath(chainName);
+        ServiceFunctionPath sfcPath = getSfcPath(new SfcName(chainName));
         if (sfcPath == null || sfcPath.getName() == null) {
             LOG.error("updateAction: SFC Path was invalid. Either null or name was null.", sfcPath);
             return null;
         }
         // Find existing RSP based on following naming convention, else create it.
-        String rspName = sfcPath.getName() + "-gbp-rsp";
+        RspName rspName = new RspName(sfcPath.getName() + "-gbp-rsp");
         ReadOnlyTransaction rTx = ctx.getDataBroker().newReadOnlyTransaction();
         RenderedServicePath renderedServicePath;
         RenderedServicePath rsp = getRspByName(rspName, rTx);
@@ -167,7 +169,7 @@ public class ChainAction extends Action {
 
         try {
             if (sfcPath.isSymmetric() && direction.equals(Direction.Out)){
-                rspName = rspName + "-Reverse";
+                rspName = new RspName(rspName.getValue() + "-Reverse");
                 rsp = getRspByName(rspName, rTx);
                 if (rsp == null) {
                     LOG.info("updateAction: Could not find Reverse RSP {} for Chain {}", rspName, chainName);
@@ -223,10 +225,10 @@ public class ChainAction extends Action {
         return actions;
     }
 
-    private RenderedServicePath createRsp(ServiceFunctionPath sfcPath, String rspName) {
+    private RenderedServicePath createRsp(ServiceFunctionPath sfcPath, RspName rspName) {
         CreateRenderedPathInput rspInput = new CreateRenderedPathInputBuilder().setParentServiceFunctionPath(
-                sfcPath.getName())
-            .setName(rspName)
+                sfcPath.getName().getValue())
+            .setName(rspName.getValue())
             .setSymmetric(sfcPath.isSymmetric())
             .build();
          return SfcProviderRenderedPathAPI.createRenderedServicePathAndState(sfcPath, rspInput);
@@ -265,7 +267,7 @@ public class ChainAction extends Action {
         return valid;
     }
 
-    private RenderedServicePath getRspByName(String rspName, ReadOnlyTransaction rTx) {
+    private RenderedServicePath getRspByName(RspName rspName, ReadOnlyTransaction rTx) {
         Optional<RenderedServicePath> optRsp = DataStoreHelper.readFromDs(LogicalDatastoreType.OPERATIONAL,
                 SfcIidFactory.rspIid(rspName), rTx);
         if (optRsp.isPresent()) {
@@ -284,12 +286,13 @@ public class ChainAction extends Action {
         if (pv == null) {
             return false;
         }
+        SfcName sfcName = new SfcName(pv.getStringValue());
         LOG.trace("isValidGbpChain: Invoking RPC for chain {}", pv.getStringValue());
-        ServiceFunctionChain chain = SfcProviderServiceChainAPI.readServiceFunctionChain(pv.getStringValue());
+        ServiceFunctionChain chain = SfcProviderServiceChainAPI.readServiceFunctionChain(sfcName);
         return (chain != null);
     }
 
-    public ServiceFunctionPath getSfcPath(String chainName) {
+    public ServiceFunctionPath getSfcPath(SfcName chainName) {
         ServiceFunctionPaths paths = SfcProviderServicePathAPI.readAllServiceFunctionPaths();
         for (ServiceFunctionPath path : paths.getServiceFunctionPath()) {
             if (path.getServiceChainName().equals(chainName)) {
index 1e067e83d844782430c817a2764c2b3e0113ddce..923fe3eaa7666290939ffa5163181b5faa0577c6 100644 (file)
@@ -8,6 +8,9 @@
 
 package org.opendaylight.groupbasedpolicy.renderer.ofoverlay.sfcutils;
 
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.RspName;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.SfcName;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.SfpName;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.RenderedServicePaths;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.rendered.service.paths.RenderedServicePath;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.rendered.service.paths.RenderedServicePathKey;
@@ -25,7 +28,7 @@ public class SfcIidFactory {
         throw new UnsupportedOperationException();
     }
 
-    public static InstanceIdentifier<ServiceFunctionChain> sfcIid(String sfcName) {
+    public static InstanceIdentifier<ServiceFunctionChain> sfcIid(SfcName sfcName) {
 
         ServiceFunctionChainKey serviceFunctionChainKey =
                 new ServiceFunctionChainKey(sfcName);
@@ -33,14 +36,14 @@ public class SfcIidFactory {
                 .child(ServiceFunctionChain.class, serviceFunctionChainKey).build();
     }
 
-    public static InstanceIdentifier<ServiceFunctionPath> sfpIid(String sfpName) {
+    public static InstanceIdentifier<ServiceFunctionPath> sfpIid(SfpName sfpName) {
 
         ServiceFunctionPathKey serviceFunctionPathKey = new ServiceFunctionPathKey(sfpName);
         return InstanceIdentifier.builder(ServiceFunctionPaths.class)
                 .child(ServiceFunctionPath.class, serviceFunctionPathKey).build();
     }
 
-    public static InstanceIdentifier<RenderedServicePath> rspIid(String rspName) {
+    public static InstanceIdentifier<RenderedServicePath> rspIid(RspName rspName) {
 
         RenderedServicePathKey rspKey = new RenderedServicePathKey(rspName);
         return InstanceIdentifier.builder(RenderedServicePaths.class)
index d78d9ecf8755d919848b4b77bb68efee2da3b172..a6493b9c47f561c537b2e0a4b80c4d46810e26f3 100755 (executable)
@@ -35,6 +35,8 @@ import org.opendaylight.groupbasedpolicy.renderer.ofoverlay.flow.OrdinalFactory.
 import org.opendaylight.groupbasedpolicy.renderer.ofoverlay.flow.PolicyEnforcer.NetworkElements;
 import org.opendaylight.groupbasedpolicy.renderer.ofoverlay.flow.PolicyEnforcer.PolicyPair;
 import org.opendaylight.groupbasedpolicy.resolver.EgKey;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.SfcName;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.SfpName;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.rendered.service.paths.RenderedServicePath;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.sfp.rev140701.service.function.paths.ServiceFunctionPath;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.action.types.rev131112.action.list.ActionBuilder;
@@ -72,7 +74,7 @@ public class ChainActionTest {
         chainAction = spy(new ChainAction());
 
         sfcPath = mock(ServiceFunctionPath.class);
-        when(sfcPath.getName()).thenReturn("sfcPathName");
+        when(sfcPath.getName()).thenReturn(new SfpName("sfcPathName"));
         when(sfcPath.isSymmetric()).thenReturn(true);
 
         ctx = mock(OfContext.class);
@@ -122,7 +124,7 @@ public class ChainActionTest {
         Integer order = Integer.valueOf(0);
         OfWriter ofWriter = mock(OfWriter.class);
 
-        doReturn(sfcPath).when(chainAction).getSfcPath(chainName);
+        doReturn(sfcPath).when(chainAction).getSfcPath(new SfcName(chainName));
 
         List<ActionBuilder> result = chainAction.updateAction(actions, params, order, netElements, policyPair,
                 ofWriter,
@@ -167,7 +169,7 @@ public class ChainActionTest {
         Integer order = Integer.valueOf(0);
         OfWriter ofWriter = mock(OfWriter.class);
 
-        doReturn(sfcPath).when(chainAction).getSfcPath(chainName);
+        doReturn(sfcPath).when(chainAction).getSfcPath(new SfcName(chainName));
         when(sfcPath.getName()).thenReturn(null);
 
         List<ActionBuilder> result = chainAction.updateAction(actions, params, order, netElements, policyPair,
index ad8a6ec1a2369cff2a6e7e5b9c7fd416d5c620ce..7e1c76cc3282ec97650c8fc39665ca95a59c9fb2 100644 (file)
@@ -10,6 +10,9 @@ package org.opendaylight.groupbasedpolicy.renderer.ofoverlay.sfcutils;
 
 import org.junit.Assert;
 import org.junit.Test;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.RspName;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.SfcName;
+import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.common.rev151017.SfpName;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.rsp.rev140701.rendered.service.paths.RenderedServicePath;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.sfc.rev140701.service.function.chain.grouping.ServiceFunctionChain;
 import org.opendaylight.yang.gen.v1.urn.cisco.params.xml.ns.yang.sfc.sfp.rev140701.service.function.paths.ServiceFunctionPath;
@@ -19,7 +22,7 @@ public class SfcIidFactoryTest {
 
     @Test
     public void sfcIidTest() {
-        String sfcName = "sfcName";
+        SfcName sfcName = new SfcName("sfcName");
         InstanceIdentifier<ServiceFunctionChain> identifier = SfcIidFactory.sfcIid(sfcName);
         Assert.assertFalse(identifier.isWildcarded());
         Assert.assertEquals(sfcName, InstanceIdentifier.keyOf(identifier).getName());
@@ -27,7 +30,7 @@ public class SfcIidFactoryTest {
 
     @Test
     public void sfpIidTest() {
-        String sfpName = "sfpName";
+        SfpName sfpName = new SfpName("sfpName");
         InstanceIdentifier<ServiceFunctionPath> identifier = SfcIidFactory.sfpIid(sfpName);
         Assert.assertFalse(identifier.isWildcarded());
         Assert.assertEquals(sfpName, InstanceIdentifier.keyOf(identifier).getName());
@@ -35,7 +38,7 @@ public class SfcIidFactoryTest {
 
     @Test
     public void rspIidTest() {
-        String rspName = "rspName";
+        RspName rspName = new RspName("rspName");
         InstanceIdentifier<RenderedServicePath> identifier = SfcIidFactory.rspIid(rspName);
         Assert.assertFalse(identifier.isWildcarded());
         Assert.assertEquals(rspName, InstanceIdentifier.keyOf(identifier).getName());