Changed RPC to retrieve Vxlan DC GWY Ext. Tunnels 24/63324/20
authorHema Gopalakrishnan <hema.gopalkrishnan@ericsson.com>
Wed, 20 Sep 2017 09:32:25 +0000 (15:02 +0530)
committerVivek Srivastava <vivek.v.srivastava@ericsson.com>
Fri, 9 Feb 2018 11:58:29 +0000 (11:58 +0000)
Changed the ITM RPC to look for external tunnels towards DC gateway based on
the tunnel type provided as input and removed the hard-coded MPLS Over GRE
tunnel type.
Fixed merge conflicts

Change-Id: I1ac9da0390539adbaeaeb841ce95f31a122dda6b
Signed-off-by: Hema Gopalakrishnan <hema.gopalkrishnan@ericsson.com>
itm/itm-impl/src/main/java/org/opendaylight/genius/itm/rpc/ItmManagerRpcService.java
itm/itm-impl/src/test/java/org/opendaylight/genius/itm/impl/ItmManagerRpcServiceTest.java
itm/itm-impl/src/test/java/org/opendaylight/genius/itm/tests/ItmManagerRpcServiceTest.java
itm/itm-impl/src/test/java/org/opendaylight/genius/itm/tests/ItmTestConstants.java

index fe82e9f9ffce01dc7a736059683b36ce0e1fc41a..8ea83ab31fa81c3d2114807cfcad6cee0f16090c 100644 (file)
@@ -37,7 +37,6 @@ import org.opendaylight.genius.mdsalutil.matches.MatchTunnelId;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpAddress;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.tables.table.Flow;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeLogicalGroup;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeMplsOverGre;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeVxlan;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.config.rev160406.ItmConfig;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.itm.op.rev160406.DpnEndpoints;
@@ -424,7 +423,7 @@ public class ItmManagerRpcService implements ItmRpcService {
         IpAddress dstIp = input.getDestinationIp() ;
         InstanceIdentifier<ExternalTunnel> path1 = InstanceIdentifier.create(ExternalTunnelList.class)
                 .child(ExternalTunnel.class,
-                        new ExternalTunnelKey(String.valueOf(dstIp), srcDpn.toString(), TunnelTypeMplsOverGre.class));
+                        new ExternalTunnelKey(String.valueOf(dstIp), srcDpn.toString(), input.getTunnelType()));
 
         Optional<ExternalTunnel> optExtTunnel = ItmUtils.read(LogicalDatastoreType.CONFIGURATION, path1, dataBroker);
 
index 41b8a3523800fbcd1bef481da5675c0fb1f94df2..74d03e2c2a6f87cbd4d46ac74cc604f9942a8cc7 100644 (file)
@@ -146,6 +146,7 @@ public class ItmManagerRpcServiceTest {
     DeleteL2GwMlagDeviceInput deleteL2GwMlagDeviceInput = null;
     GetTunnelInterfaceNameInput getTunnelInterfaceNameInput = null;
     java.lang.Class<? extends TunnelTypeBase> tunnelType1 = TunnelTypeVxlan.class;
+    java.lang.Class<? extends TunnelTypeBase> tunnelType2 = TunnelTypeMplsOverGre.class;
     Class<? extends TunnelMonitoringTypeBase> monitorProtocol = ITMConstants.DEFAULT_MONITOR_PROTOCOL;
 
     InstanceIdentifier<ExternalTunnel> externalTunnelIdentifier = InstanceIdentifier.create(ExternalTunnelList.class)
@@ -240,7 +241,7 @@ public class ItmManagerRpcServiceTest {
                 .setSourceDPN(dpId1).setTransportType(tunnelType1)
                 .setKey(new InternalTunnelKey(dpId2, dpId1, tunnelType1)).build();
         getInternalOrExternalInterfaceNameInput = new GetInternalOrExternalInterfaceNameInputBuilder()
-                .setDestinationIp(ipAddress1).setSourceDpid(dpId1).setTunnelType(tunnelType1).build();
+                .setDestinationIp(ipAddress1).setSourceDpid(dpId1).setTunnelType(tunnelType2).build();
         addExternalTunnelEndpointInput = new AddExternalTunnelEndpointInputBuilder().setTunnelType(tunnelType1)
                 .setDestinationIp(ipAddress1).build();
         addL2GwDeviceInput = new AddL2GwDeviceInputBuilder().setIpAddress(ipAddress1).setNodeId(sourceDevice)
index ac26738d222a35c1140c313824e3f79024f7d4a9..deee989bf1703867aa07ad40c962406555ccb2b7 100644 (file)
@@ -198,10 +198,10 @@ public class ItmManagerRpcServiceTest {
                 .build();
         getExternalInterfaceNameInput = new GetInternalOrExternalInterfaceNameInputBuilder()
                 .setDestinationIp(ItmTestConstants.IP_ADDRESS_3).setSourceDpid(ItmTestConstants.DP_ID_1)
-                .setTunnelType(ItmTestConstants.TUNNEL_TYPE_VXLAN).build();
+                .setTunnelType(ItmTestConstants.TUNNEL_TYPE_MPLS_OVER_GRE).build();
         getInternalInterfaceNameInput = new GetInternalOrExternalInterfaceNameInputBuilder()
                 .setDestinationIp(ItmTestConstants.IP_ADDRESS_3).setSourceDpid(ItmTestConstants.DP_ID_1)
-                .setTunnelType(ItmTestConstants.TUNNEL_TYPE_VXLAN).build();
+                .setTunnelType(ItmTestConstants.TUNNEL_TYPE_MPLS_OVER_GRE).build();
         addExternalTunnelEndpointInput = new AddExternalTunnelEndpointInputBuilder()
                 .setTunnelType(ItmTestConstants.TUNNEL_TYPE_VXLAN)
                 .setDestinationIp(ItmTestConstants.IP_ADDRESS_3).build();
index 2be45b001435b42c710e6771a314260a500cb300..d9ad645cfd648bb69c2bcbe86251c347b49e55bc 100644 (file)
@@ -15,6 +15,7 @@ import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.IpPrefixBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelMonitoringTypeBase;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeBase;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeMplsOverGre;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.genius.interfacemanager.rev160406.TunnelTypeVxlan;
 
 public interface ItmTestConstants {
@@ -36,6 +37,7 @@ public interface ItmTestConstants {
     IpAddress IP_ADDRESS_3 = IpAddressBuilder.getDefaultInstance(TEP_IP_3);
     IpAddress GTWY_IP_1 = IpAddressBuilder.getDefaultInstance(GWY_IP_1);
     Class<? extends TunnelTypeBase> TUNNEL_TYPE_VXLAN = TunnelTypeVxlan.class;
+    Class<? extends TunnelTypeBase> TUNNEL_TYPE_MPLS_OVER_GRE = TunnelTypeMplsOverGre.class;
     Class<? extends TunnelMonitoringTypeBase> MONITOR_PROTOCOL = ITMConstants.DEFAULT_MONITOR_PROTOCOL;
     String  DPID_STR_ONE = "1";
     String EXTERNAL_ID_TEP_IP_KEY = "tep-ip";