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