3417868f03db1046a3d620da4a3ce310467b9ff0
[neutron.git] / neutron-spi / src / main / java / org / opendaylight / neutron / spi / NeutronFirewall.java
1 /*
2  * Copyright (C) 2014 Red Hat, Inc.  All rights reserved.
3  *
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
7  */
8
9 package org.opendaylight.neutron.spi;
10
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
18 /**
19  * OpenStack Neutron v2.0 Firewall as a service
20  * (FWaaS) bindings. See OpenStack Network API
21  * v2.0 Reference for description of  the fields:
22  * Implemented fields are as follows:
23  *
24  * <p>
25  * id                 uuid-str
26  * tenant_id          uuid-str
27  * name               String
28  * admin_state_up     Bool
29  * shared             Bool
30  * firewall_policy_id uuid-str
31  * http://docs.openstack.org/api/openstack-network/2.0/openstack-network.pdf
32  *
33  */
34
35 @XmlRootElement
36 @XmlAccessorType(XmlAccessType.NONE)
37 public final class NeutronFirewall extends NeutronBaseAttributes<NeutronFirewall> implements Serializable {
38     private static final long serialVersionUID = 1L;
39
40     @XmlElement(defaultValue = "true", name = "admin_state_up")
41     Boolean firewallAdminStateIsUp;
42
43     @XmlElement(defaultValue = "false", name = "shared")
44     Boolean firewallIsShared;
45
46     @XmlElement(name = "firewall_policy_id")
47     String neutronFirewallPolicyID;
48
49     public Boolean getFirewallAdminStateIsUp() {
50         return firewallAdminStateIsUp;
51     }
52
53     public void setFirewallAdminStateIsUp(Boolean firewallAdminStateIsUp) {
54         this.firewallAdminStateIsUp = firewallAdminStateIsUp;
55     }
56
57     public Boolean getFirewallIsShared() {
58         return firewallIsShared;
59     }
60
61     public void setFirewallIsShared(Boolean firewallIsShared) {
62         this.firewallIsShared = firewallIsShared;
63     }
64
65     public String getFirewallPolicyID() {
66         return neutronFirewallPolicyID;
67     }
68
69     public void setFirewallPolicyID(String firewallPolicy) {
70         this.neutronFirewallPolicyID = firewallPolicy;
71     }
72
73     public NeutronFirewall extractFields(List<String> fields) {
74         NeutronFirewall ans = new NeutronFirewall();
75         for (String s : fields) {
76             extractField(s, ans);
77             if (s.equals("admin_state_up")) {
78                 ans.setFirewallAdminStateIsUp(firewallAdminStateIsUp);
79             }
80             if (s.equals("shared")) {
81                 ans.setFirewallIsShared(firewallIsShared);
82             }
83             if (s.equals("firewall_policy_id")) {
84                 ans.setFirewallPolicyID(this.getFirewallPolicyID());
85             }
86         }
87         return ans;
88     }
89
90     @Override
91     public String toString() {
92         return "NeutronFirewall{" + "firewallUUID='" + uuid + '\'' + ", firewallTenantID='" + tenantID + '\''
93                 + ", firewallName='" + name + '\'' + ", firewallAdminStateIsUp=" + firewallAdminStateIsUp
94                 + ", firewallIsShared=" + firewallIsShared + ", firewallRulePolicyID=" + neutronFirewallPolicyID + '}';
95     }
96 }