/*- * ============LICENSE_START======================================================= * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * ============LICENSE_END========================================================= */ package com.woorea.openstack.nova.model; import java.io.Serializable; import java.util.List; import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonRootName; @JsonRootName("security_group") public class SecurityGroup implements Serializable { @JsonRootName("security_group_rule") public static final class Rule implements Serializable { public static final class Group implements Serializable { private String name; @JsonProperty("tenant_id") private String tenantId; public String getName() { return name; } public String getTenantId() { return tenantId; } @Override public String toString() { return "Group [name=" + name + ", tenantId=" + tenantId + "]"; } } public static final class IpRange implements Serializable { private String cidr; public String getCidr() { return cidr; } @Override public String toString() { return "IpRange [cidr=" + cidr + "]"; } } private String id; private String name; @JsonProperty("parent_group_id") private String parentGroupId; @JsonProperty("from_port") private Integer fromPort; @JsonProperty("to_port") private Integer toPort; @JsonProperty("ip_protocol") private String ipProtocol; @JsonProperty("ip_range") private IpRange ipRange = new IpRange(); private Group group; /** * @return the id */ public String getId() { return id; } /** * @return the name */ public String getName() { return name; } /** * @return the parentGroupId */ public String getParentGroupId() { return parentGroupId; } /** * @return the fromPort */ public Integer getFromPort() { return fromPort; } /** * @return the toPort */ public Integer getToPort() { return toPort; } /** * @return the ipProtocol */ public String getIpProtocol() { return ipProtocol; } /** * @return the ipRange */ public IpRange getIpRange() { return ipRange; } /** * @return the group */ public Group getGroup() { return group; } /* * (non-Javadoc) * * @see java.lang.Object#toString() */ @Override public String toString() { return "Rule [id=" + id + ", name=" + name + ", parentGroupId=" + parentGroupId + ", fromPort=" + fromPort + ", toPort=" + toPort + ", ipProtocol=" + ipProtocol + ", ipRange=" + ipRange + ", group=" + group + "]"; } } private String id; private String name; private String description; @JsonProperty("tenant_id") private String tenantId; private List rules; private List links; /** * @return the id */ public String getId() { return id; } /** * @return the name */ public String getName() { return name; } /** * @return the description */ public String getDescription() { return description; } /** * @return the tenantId */ public String getTenantId() { return tenantId; } /** * @return the rules */ public List getRules() { return rules; } /** * @return the links */ public List getLinks() { return links; } /* * (non-Javadoc) * * @see java.lang.Object#toString() */ @Override public String toString() { return "SecurityGroup [id=" + id + ", name=" + name + ", description=" + description + ", tenantId=" + tenantId + ", rules=" + rules + ", links=" + links + "]"; } }