BUG #4026 neutron spi: make NeutronObject implements INeutronObject
[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 javax.xml.bind.annotation.XmlAccessType;
12 import javax.xml.bind.annotation.XmlAccessorType;
13 import javax.xml.bind.annotation.XmlElement;
14 import javax.xml.bind.annotation.XmlRootElement;
15 import java.io.Serializable;
16 import java.util.Iterator;
17 import java.util.List;
18
19 /**
20  * OpenStack Neutron v2.0 Firewall as a service
21  * (FWaaS) bindings. See OpenStack Network API
22  * v2.0 Reference for description of  the fields:
23  * Implemented fields are as follows:
24  *
25  * id                 uuid-str
26  * tenant_id          uuid-str
27  * name               String
28  * description        String
29  * admin_state_up     Bool
30  * status             String
31  * shared             Bool
32  * firewall_policy_id uuid-str
33  * http://docs.openstack.org/api/openstack-network/2.0/openstack-network.pdf
34  *
35  */
36
37 @XmlRootElement
38 @XmlAccessorType(XmlAccessType.NONE)
39
40 public class NeutronFirewall implements Serializable, INeutronObject {
41     private static final long serialVersionUID = 1L;
42
43     @XmlElement(name = "id")
44     String firewallUUID;
45
46     @XmlElement (name = "tenant_id")
47     String firewallTenantID;
48
49     @XmlElement (name = "name")
50     String firewallName;
51
52     @XmlElement (name = "description")
53     String firewallDescription;
54
55     @XmlElement (defaultValue = "true", name = "admin_state_up")
56     Boolean firewallAdminStateIsUp;
57
58     @XmlElement (name = "status")
59     String firewallStatus;
60
61     @XmlElement (defaultValue = "false", name = "shared")
62     Boolean firewallIsShared;
63
64     @XmlElement (name = "firewall_policy_id")
65     String neutronFirewallPolicyID;
66
67     public String getID() {
68         return firewallUUID;
69     }
70
71     public void setID(String id) {
72         firewallUUID = id;
73     }
74
75     // @deprecated use getID()
76     public String getFirewallUUID() {
77         return firewallUUID;
78     }
79
80     // @deprecated use setID()
81     public void setFirewallUUID(String firewallUUID) {
82         this.firewallUUID = firewallUUID;
83     }
84
85     public String getFirewallTenantID() {
86         return firewallTenantID;
87     }
88
89     public void setFirewallTenantID(String firewallTenantID) {
90         this.firewallTenantID = firewallTenantID;
91     }
92
93     public String getFirewallName() {
94         return firewallName;
95     }
96
97     public void setFirewallName(String firewallName) {
98         this.firewallName = firewallName;
99     }
100
101     public String getFirewallDescription() {
102         return firewallDescription;
103     }
104
105     public void setFirewallDescription(String firewallDescription) {
106         this.firewallDescription = firewallDescription;
107     }
108
109     public Boolean getFirewallAdminStateIsUp() {
110         return firewallAdminStateIsUp;
111     }
112
113     public void setFirewallAdminStateIsUp(Boolean firewallAdminStateIsUp) {
114         this.firewallAdminStateIsUp = firewallAdminStateIsUp;
115     }
116
117     public String getFirewallStatus() {
118         return firewallStatus;
119     }
120
121     public void setFirewallStatus(String firewallStatus) {
122         this.firewallStatus = firewallStatus;
123     }
124
125     public Boolean getFirewallIsShared() {
126         return firewallIsShared;
127     }
128
129     public void setFirewallIsShared(Boolean firewallIsShared) {
130         this.firewallIsShared = firewallIsShared;
131     }
132
133     public String getFirewallPolicyID() {
134         return neutronFirewallPolicyID;
135     }
136
137     public void setNeutronFirewallPolicyID(String firewallPolicy) {
138         this.neutronFirewallPolicyID = firewallPolicy;
139     }
140
141     public NeutronFirewall extractFields(List<String> fields) {
142         NeutronFirewall ans = new NeutronFirewall();
143         Iterator<String> i = fields.iterator();
144         while (i.hasNext()) {
145             String s = i.next();
146             if (s.equals("id")) {
147                 ans.setID(this.getID());
148             }
149             if (s.equals("tenant_id")) {
150                 ans.setFirewallTenantID(this.getFirewallTenantID());
151             }
152             if (s.equals("name")) {
153                 ans.setFirewallName(this.getFirewallName());
154             }
155             if(s.equals("description")) {
156                 ans.setFirewallDescription(this.getFirewallDescription());
157             }
158             if (s.equals("admin_state_up")) {
159                 ans.setFirewallAdminStateIsUp(firewallAdminStateIsUp);
160             }
161             if (s.equals("status")) {
162                 ans.setFirewallStatus(this.getFirewallStatus());
163             }
164             if (s.equals("shared")) {
165                 ans.setFirewallIsShared(firewallIsShared);
166             }
167             if (s.equals("firewall_policy_id")) {
168                 ans.setNeutronFirewallPolicyID(this.getFirewallPolicyID());
169             }
170         }
171         return ans;
172     }
173
174     @Override
175     public String toString() {
176         return "NeutronFirewall{" +
177             "firewallUUID='" + firewallUUID + '\'' +
178             ", firewallTenantID='" + firewallTenantID + '\'' +
179             ", firewallName='" + firewallName + '\'' +
180             ", firewallDescription='" + firewallDescription + '\'' +
181             ", firewallAdminStateIsUp=" + firewallAdminStateIsUp +
182             ", firewallStatus='" + firewallStatus + '\'' +
183             ", firewallIsShared=" + firewallIsShared +
184             ", firewallRulePolicyID=" + neutronFirewallPolicyID +
185             '}';
186     }
187 }