HA cache sync for switch manager
[controller.git] / opendaylight / switchmanager / api / src / main / java / org / opendaylight / controller / switchmanager / SubnetConfig.java
index 895f117321a6c61645742e425bcf0ad2d0af6cbd..52b5f5255d3e5c13f088a38c19819c8730fdf266 100644 (file)
@@ -34,7 +34,7 @@ import org.opendaylight.controller.sal.utils.NodeConnectorCreator;
  */
 @XmlRootElement
 @XmlAccessorType(XmlAccessType.NONE)
-public class SubnetConfig implements Serializable {
+public class SubnetConfig implements Cloneable, Serializable {
     //static fields are by default excluded by Gson parser
     private static final long serialVersionUID = 1L;
     private static final String prettyFields[] = { GUIField.NAME.toString(),
@@ -60,6 +60,12 @@ public class SubnetConfig implements Serializable {
         nodePorts = sp;
     }
 
+    public SubnetConfig(SubnetConfig subnetConfig) {
+        name = subnetConfig.name;
+        subnet = subnetConfig.subnet;
+        nodePorts = new ArrayList<String>(subnetConfig.nodePorts);
+    }
+
     public String getName() {
         return name;
     }
@@ -233,7 +239,16 @@ public class SubnetConfig implements Serializable {
 
     @Override
     public String toString() {
-        return ("Subnet Config [Description=" + name + " Subnet=" + subnet
-                + " NodeConnectors=" + nodePorts + "]");
+        return ("SubnetConfig [Description=" + name + ", Subnet=" + subnet
+                + ", NodeConnectors=" + nodePorts + "]");
+    }
+
+    /**
+     * Implement clonable interface
+     */
+    @Override
+    public SubnetConfig clone() {
+        return new SubnetConfig(this);
     }
+
 }