Add implementation for flat L3 overlay
[groupbasedpolicy.git] / renderers / vpp / src / main / java / org / opendaylight / groupbasedpolicy / renderer / vpp / iface / VppPathMapper.java
index 6cebc3f8561b491505bb3deb36a6579188d81a48..a802c1bdceb9a0c0f84fb9bf6fc1ee667a29ec1f 100644 (file)
@@ -53,6 +53,24 @@ public class VppPathMapper {
         return Optional.of(VppIidFactory.getInterfaceIID(new InterfaceKey(interfaceName)));
     }
 
+    public static Optional<String> interfacePathToInterfaceName(@Nullable String restPath) {
+        if (Strings.isNullOrEmpty(restPath)) {
+            return Optional.absent();
+        }
+        if (restPath.length() < INTERFACE_PATH_MIN_LENGTH) {
+            return Optional.absent();
+        }
+        if (!restPath.startsWith(INTERFACE_PATH_BEFORE_KEY)) {
+            return Optional.absent();
+        }
+        if (!restPath.endsWith(INTERFACE_PATH_AFTER_KEY)) {
+            return Optional.absent();
+        }
+        int endIndexInterfaceName = restPath.length() - INTERFACE_PATH_AFTER_KEY.length();
+        String interfaceName = restPath.substring(INTERFACE_PATH_BEFORE_KEY.length(), endIndexInterfaceName);
+        return Optional.of(interfaceName);
+    }
+
     public static String bridgeDomainToRestPath(String bridgeDomainName) {
         return BD_PATH_BEFORE_KEY + bridgeDomainName + BD_PATH_AFTER_KEY;
     }