2 * Copyright (C) 2014 Red Hat, Inc. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
9 package org.opendaylight.neutron.spi;
11 import java.io.Serializable;
12 import java.util.List;
13 import javax.xml.bind.annotation.XmlAccessType;
14 import javax.xml.bind.annotation.XmlAccessorType;
15 import javax.xml.bind.annotation.XmlElement;
16 import javax.xml.bind.annotation.XmlRootElement;
17 import org.slf4j.Logger;
18 import org.slf4j.LoggerFactory;
21 * OpenStack Neutron v2.0 Firewall as a service
22 * (FWaaS) bindings. See OpenStack Network API
23 * v2.0 Reference for description of the fields:
24 * Implemented fields are as follows:
32 * firewall_policy_id uuid-str
33 * http://docs.openstack.org/api/openstack-network/2.0/openstack-network.pdf
38 @XmlAccessorType(XmlAccessType.NONE)
39 public final class NeutronFirewall extends NeutronBaseAttributes<NeutronFirewall> implements Serializable {
40 private static final Logger LOGGER = LoggerFactory.getLogger(NeutronFirewall.class);
41 private static final long serialVersionUID = 1L;
43 @XmlElement(defaultValue = "true", name = "admin_state_up")
44 Boolean firewallAdminStateIsUp;
46 @XmlElement(defaultValue = "false", name = "shared")
47 Boolean firewallIsShared;
49 @XmlElement(name = "firewall_policy_id")
50 String firewallPolicyID;
52 public Boolean getFirewallAdminStateIsUp() {
53 return firewallAdminStateIsUp;
56 public void setFirewallAdminStateIsUp(Boolean firewallAdminStateIsUp) {
57 this.firewallAdminStateIsUp = firewallAdminStateIsUp;
60 public Boolean getFirewallIsShared() {
61 return firewallIsShared;
64 public void setFirewallIsShared(Boolean firewallIsShared) {
65 this.firewallIsShared = firewallIsShared;
68 public String getFirewallPolicyID() {
69 return firewallPolicyID;
72 public void setFirewallPolicyID(String firewallPolicy) {
73 this.firewallPolicyID = firewallPolicy;
76 public NeutronFirewall extractFields(List<String> fields) {
77 NeutronFirewall ans = new NeutronFirewall();
78 for (String s : fields) {
79 if (extractField(s, ans)) {
83 case "admin_state_up":
84 ans.setFirewallAdminStateIsUp(firewallAdminStateIsUp);
87 ans.setFirewallIsShared(firewallIsShared);
89 case "firewall_policy_id":
90 ans.setFirewallPolicyID(this.getFirewallPolicyID());
93 LOGGER.warn("{} is not a NeutronBgpvpn suitable field.", s);
101 public String toString() {
102 return "NeutronFirewall{" + "firewallUUID='" + uuid + '\'' + ", firewallTenantID='" + tenantID + '\''
103 + ", firewallName='" + name + '\'' + ", firewallAdminStateIsUp=" + firewallAdminStateIsUp
104 + ", firewallIsShared=" + firewallIsShared + ", firewallRulePolicyID=" + firewallPolicyID + '}';