[ONOS-3793] Implements the Openstack Security Group REST call parser
Change-Id: Ie6665d4ebae26e363853db28fb2a535c55f1e2ec
diff --git a/apps/openstackswitching/api/src/main/java/org/onosproject/openstackswitching/OpenstackSubnet.java b/apps/openstackswitching/api/src/main/java/org/onosproject/openstackswitching/OpenstackSubnet.java
index bc536e8..f832768 100644
--- a/apps/openstackswitching/api/src/main/java/org/onosproject/openstackswitching/OpenstackSubnet.java
+++ b/apps/openstackswitching/api/src/main/java/org/onosproject/openstackswitching/OpenstackSubnet.java
@@ -17,6 +17,8 @@
import org.onlab.packet.Ip4Address;
+import java.util.Collection;
+import java.util.Collections;
import java.util.List;
import static com.google.common.base.Preconditions.checkNotNull;
@@ -34,10 +36,11 @@
private String gatewayIp;
private String cidr;
private String id;
+ private Collection<String> securityGroups;
private OpenstackSubnet(String name, boolean enableHhcp, String networkId,
String tenantId, List<Ip4Address> dnsNameservers, String gatewayIp,
- String cidr, String id) {
+ String cidr, String id, Collection<String> securityGroups) {
this.name = name;
this.enableHhcp = enableHhcp;
this.networkId = checkNotNull(networkId);
@@ -46,6 +49,7 @@
this.gatewayIp = gatewayIp;
this.cidr = checkNotNull(cidr);
this.id = checkNotNull(id);
+ this.securityGroups = securityGroups;
}
/**
@@ -89,6 +93,10 @@
return id;
}
+ public Collection<String> securityGroups() {
+ return Collections.unmodifiableCollection(this.securityGroups);
+ }
+
/**
* OpenstackSubnet Builder class.
*
@@ -102,6 +110,7 @@
private String gatewayIp;
private String cidr;
private String id;
+ private Collection<String> securityGroups;
Builder() {}
@@ -153,9 +162,15 @@
return this;
}
+ public Builder securityGroups(Collection<String> securityGroups) {
+ this.securityGroups = securityGroups;
+
+ return this;
+ }
+
public OpenstackSubnet build() {
return new OpenstackSubnet(name, enableDhcp, networkId, tenantId,
- dnsNameservers, gatewayIp, cidr, id);
+ dnsNameservers, gatewayIp, cidr, id, securityGroups);
}
}
}