Refactor VpnManager module.
[netvirt.git] / vpnmanager / impl / src / main / java / org / opendaylight / netvirt / vpnmanager / VpnUtil.java
index debf06b3bff423eca02119cc79094a6e751e4425..274c2cf1255a241edbe58bb0101e55df63b4d35f 100644 (file)
@@ -81,6 +81,7 @@ import org.opendaylight.netvirt.neutronvpn.interfaces.INeutronVpnManager;
 import org.opendaylight.netvirt.vpnmanager.api.InterfaceUtils;
 import org.opendaylight.netvirt.vpnmanager.api.VpnExtraRouteHelper;
 import org.opendaylight.netvirt.vpnmanager.api.VpnHelper;
+import org.opendaylight.netvirt.vpnmanager.iplearn.model.MacEntry;
 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.VpnAfConfig;
 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.VpnInstances;
 import org.opendaylight.yang.gen.v1.urn.huawei.params.xml.ns.yang.l3vpn.rev140815.VpnInterfaces;
@@ -245,7 +246,7 @@ public final class VpnUtil {
 
     private static final Logger LOG = LoggerFactory.getLogger(VpnUtil.class);
 
-    static final int SINGLE_TRANSACTION_BROKER_NO_RETRY = 1;
+    public static final int SINGLE_TRANSACTION_BROKER_NO_RETRY = 1;
 
     private final DataBroker dataBroker;
     private final IdManagerService idManager;
@@ -904,8 +905,8 @@ public final class VpnUtil {
         }
     }
 
-    void createLearntVpnVipToPort(String vpnName, String fixedIp, String
-            portName, String macAddress, TypedWriteTransaction<Operational> writeOperTxn) {
+    public void createLearntVpnVipToPort(String vpnName, String fixedIp, String portName, String macAddress,
+            TypedWriteTransaction<Operational> writeOperTxn) {
         synchronized ((vpnName + fixedIp).intern()) {
             InstanceIdentifier<LearntVpnVipToPort> id = buildLearntVpnVipToPortIdentifier(vpnName, fixedIp);
             LearntVpnVipToPortBuilder builder =
@@ -982,7 +983,7 @@ public final class VpnUtil {
         return id;
     }
 
-    void removeLearntVpnVipToPortEvent(String eventId, TypedWriteTransaction<Operational> writeOperTxn) {
+    public void removeLearntVpnVipToPortEvent(String eventId, TypedWriteTransaction<Operational> writeOperTxn) {
         InstanceIdentifier<LearntVpnVipToPortEvent> id = buildLearntVpnVipToPortEventIdentifier(eventId);
         if (writeOperTxn != null) {
             writeOperTxn.delete(id);
@@ -993,7 +994,7 @@ public final class VpnUtil {
 
     }
 
-    void removeMipAdjAndLearntIp(String vpnName, String vpnInterface, String prefix) {
+    public void removeMipAdjAndLearntIp(String vpnName, String vpnInterface, String prefix) {
         synchronized ((vpnName + prefix).intern()) {
             InstanceIdentifier<LearntVpnVipToPort> id = buildLearntVpnVipToPortIdentifier(vpnName, prefix);
             MDSALUtil.syncDelete(dataBroker, LogicalDatastoreType.OPERATIONAL, id);
@@ -1115,7 +1116,7 @@ public final class VpnUtil {
         return extNetwork != null ? extNetwork.getVpnid() : null;
     }
 
-    List<Uuid> getExternalNetworkRouterIds(Uuid networkId) {
+    public List<Uuid> getExternalNetworkRouterIds(Uuid networkId) {
         Networks extNetwork = getExternalNetwork(networkId);
         return extNetwork != null ? extNetwork.getRouterIds() : Collections.emptyList();
     }
@@ -1200,7 +1201,7 @@ public final class VpnUtil {
         }
     }
 
-    Optional<IpAddress> getIpv4GatewayAddressFromInterface(String srcInterface) {
+    public Optional<IpAddress> getIpv4GatewayAddressFromInterface(String srcInterface) {
         Optional<IpAddress> gatewayIp = Optional.absent();
         if (neutronVpnService != null) {
             //TODO(Gobinath): Need to fix this as assuming port will belong to only one Subnet would be incorrect"
@@ -1222,7 +1223,7 @@ public final class VpnUtil {
         return gatewayIp;
     }
 
-    Optional<String> getGWMacAddressFromInterface(MacEntry macEntry, IpAddress gatewayIp) {
+    public Optional<String> getGWMacAddressFromInterface(MacEntry macEntry, IpAddress gatewayIp) {
         Optional<String> gatewayMac = Optional.absent();
         long vpnId = getVpnId(macEntry.getVpnName());
         InstanceIdentifier<org.opendaylight.yang.gen.v1.urn.opendaylight.netvirt.l3vpn.rev130911.vpn.id.to.vpn
@@ -1517,7 +1518,7 @@ public final class VpnUtil {
         return optionalSubnets.isPresent() ? optionalSubnets.get() : null;
     }
 
-    Uuid getSubnetFromExternalRouterByIp(Uuid routerId, String ip) {
+    public Uuid getSubnetFromExternalRouterByIp(Uuid routerId, String ip) {
         Routers externalRouter = getExternalRouter(routerId.getValue());
         if (externalRouter != null && externalRouter.getExternalIps() != null) {
             for (ExternalIps externalIp : externalRouter.getExternalIps()) {
@@ -2230,4 +2231,8 @@ public final class VpnUtil {
             return false;
         }
     }
+
+    public static String buildIpMonitorJobKey(String ip, String vpnName) {
+        return VpnConstants.IP_MONITOR_JOB_PREFIX_KEY + "-" + vpnName + "-" + ip;
+    }
 }