Add additional fields to Neutron Router 39/9939/1
authorDave Tucker <djt@redhat.com>
Wed, 13 Aug 2014 23:59:21 +0000 (00:59 +0100)
committerDave Tucker <djt@redhat.com>
Thu, 14 Aug 2014 00:03:56 +0000 (01:03 +0100)
This adds additional fields to the Neutron Router object that can assist
with providing Distributed L3

Change-Id: I71dabe323a55a9028e54b1b46e923a7e4614f46d
Signed-off-by: Dave Tucker <djt@redhat.com>
opendaylight/networkconfiguration/neutron/src/main/java/org/opendaylight/controller/networkconfig/neutron/NeutronRouter.java

index 2c10cca..ae5aa0f 100644 (file)
@@ -43,9 +43,18 @@ public class NeutronRouter extends ConfigurationObject implements Serializable,
     @XmlElement (name="tenant_id")
     String tenantID;
 
-    @XmlElement (name="external_gateway_info")
+    @XmlElement (name="external_gateway_info", nillable=true)
     NeutronRouter_NetworkReference externalGatewayInfo;
 
+    @XmlElement (name="distributed")
+    Boolean distributed;
+
+    @XmlElement (name="gw_port_id", nillable=true)
+    String gatewayPortId;
+
+    @XmlElement (name="routes")
+    List<String> routes;
+
     /* Holds a map of OpenStackRouterInterfaces by subnet UUID
      * used for internal mapping to DOVE
      */
@@ -112,6 +121,30 @@ public class NeutronRouter extends ConfigurationObject implements Serializable,
         this.externalGatewayInfo = externalGatewayInfo;
     }
 
+    public Boolean getDistributed() {
+        return distributed;
+    }
+
+    public void setDistributed(Boolean distributed) {
+        this.distributed = distributed;
+    }
+
+    public String getGatewayPortId() {
+        return gatewayPortId;
+    }
+
+    public void setGatewayPortId(String gatewayPortId) {
+        this.gatewayPortId = gatewayPortId;
+    }
+
+    public List<String> getRoutes() {
+        return routes;
+    }
+
+    public void setRoutes(List<String> routes) {
+        this.routes = routes;
+    }
+
     /**
      * This method copies selected fields from the object and returns them
      * as a new object, suitable for marshaling.
@@ -121,7 +154,6 @@ public class NeutronRouter extends ConfigurationObject implements Serializable,
      * @return an OpenStackRouters object with only the selected fields
      * populated
      */
-
     public NeutronRouter extractFields(List<String> fields) {
         NeutronRouter ans = new NeutronRouter();
         Iterator<String> i = fields.iterator();
@@ -145,6 +177,15 @@ public class NeutronRouter extends ConfigurationObject implements Serializable,
             if (s.equals("external_gateway_info")) {
                 ans.setExternalGatewayInfo(this.getExternalGatewayInfo());
             }
+            if (s.equals("distributed")) {
+                ans.setDistributed(this.getDistributed());
+            }
+            if (s.equals("gw_port_id")) {
+                ans.setGatewayPortId(this.getGatewayPortId());
+            }
+            if (s.equals("routes")){
+                ans.setRoutes(this.getRoutes());
+            }
         }
         return ans;
     }