--- /dev/null
+/*\r
+ * Copyright IBM Corporation, 2013. All rights reserved.\r
+ *\r
+ * This program and the accompanying materials are made available under the\r
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
+ * and is available at http://www.eclipse.org/legal/epl-v10.html\r
+ */\r
+\r
+package org.opendaylight.controller.networkconfig.neutron;\r
+\r
+import java.util.List;\r
+\r
+/**\r
+ * This interface defines the methods for CRUD of NB FloatingIP objects\r
+ *\r
+ */\r
+\r
+public interface INeutronFloatingIPCRUD {\r
+ /**\r
+ * Applications call this interface method to determine if a particular\r
+ * FloatingIP object exists\r
+ *\r
+ * @param uuid\r
+ * UUID of the FloatingIP object\r
+ * @return boolean\r
+ */\r
+\r
+ public boolean floatingIPExists(String uuid);\r
+\r
+ /**\r
+ * Applications call this interface method to return if a particular\r
+ * FloatingIP object exists\r
+ *\r
+ * @param uuid\r
+ * UUID of the FloatingIP object\r
+ * @return {@link org.opendaylight.controller.networkconfig.neutron.NeutronFloatingIP.OpenStackFloatingIPs}\r
+ * OpenStack FloatingIP class\r
+ */\r
+\r
+ public NeutronFloatingIP getFloatingIP(String uuid);\r
+\r
+ /**\r
+ * Applications call this interface method to return all FloatingIP objects\r
+ *\r
+ * @return a Set of OpenStackFloatingIPs objects\r
+ */\r
+\r
+ public List<NeutronFloatingIP> getAllFloatingIPs();\r
+\r
+ /**\r
+ * Applications call this interface method to add a FloatingIP object to the\r
+ * concurrent map\r
+ *\r
+ * @param input\r
+ * OpenStackFloatingIP object\r
+ * @return boolean on whether the object was added or not\r
+ */\r
+\r
+ public boolean addFloatingIP(NeutronFloatingIP input);\r
+\r
+ /**\r
+ * Applications call this interface method to remove a FloatingIP object to the\r
+ * concurrent map\r
+ *\r
+ * @param uuid\r
+ * identifier for the FloatingIP object\r
+ * @return boolean on whether the object was removed or not\r
+ */\r
+\r
+ public boolean removeFloatingIP(String uuid);\r
+\r
+ /**\r
+ * Applications call this interface method to edit a FloatingIP object\r
+ *\r
+ * @param uuid\r
+ * identifier of the FloatingIP object\r
+ * @param delta\r
+ * OpenStackFloatingIP object containing changes to apply\r
+ * @return boolean on whether the object was updated or not\r
+ */\r
+\r
+ public boolean updateFloatingIP(String uuid, NeutronFloatingIP delta);\r
+}\r