Fix sonar issue: multiple if statements
[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 import org.slf4j.Logger;
18 import org.slf4j.LoggerFactory;
19
20 /**
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:
25  *
26  * <p>
27  * id                 uuid-str
28  * tenant_id          uuid-str
29  * name               String
30  * admin_state_up     Bool
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 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;
42
43     @XmlElement(defaultValue = "true", name = "admin_state_up")
44     Boolean firewallAdminStateIsUp;
45
46     @XmlElement(defaultValue = "false", name = "shared")
47     Boolean firewallIsShared;
48
49     @XmlElement(name = "firewall_policy_id")
50     String firewallPolicyID;
51
52     public Boolean getFirewallAdminStateIsUp() {
53         return firewallAdminStateIsUp;
54     }
55
56     public void setFirewallAdminStateIsUp(Boolean firewallAdminStateIsUp) {
57         this.firewallAdminStateIsUp = firewallAdminStateIsUp;
58     }
59
60     public Boolean getFirewallIsShared() {
61         return firewallIsShared;
62     }
63
64     public void setFirewallIsShared(Boolean firewallIsShared) {
65         this.firewallIsShared = firewallIsShared;
66     }
67
68     public String getFirewallPolicyID() {
69         return firewallPolicyID;
70     }
71
72     public void setFirewallPolicyID(String firewallPolicy) {
73         this.firewallPolicyID = firewallPolicy;
74     }
75
76     public NeutronFirewall extractFields(List<String> fields) {
77         NeutronFirewall ans = new NeutronFirewall();
78         for (String s : fields) {
79             if (extractField(s, ans)) {
80                 continue;
81             }
82             switch (s) {
83                 case "admin_state_up":
84                     ans.setFirewallAdminStateIsUp(firewallAdminStateIsUp);
85                     break;
86                 case "shared":
87                     ans.setFirewallIsShared(firewallIsShared);
88                     break;
89                 case "firewall_policy_id":
90                     ans.setFirewallPolicyID(this.getFirewallPolicyID());
91                     break;
92                 default:
93                     LOGGER.warn("{} is not a NeutronBgpvpn suitable field.", s);
94                     break;
95             }
96         }
97         return ans;
98     }
99
100     @Override
101     public String toString() {
102         return "NeutronFirewall{" + "firewallUUID='" + uuid + '\'' + ", firewallTenantID='" + tenantID + '\''
103                 + ", firewallName='" + name + '\'' + ", firewallAdminStateIsUp=" + firewallAdminStateIsUp
104                 + ", firewallIsShared=" + firewallIsShared + ", firewallRulePolicyID=" + firewallPolicyID + '}';
105     }
106 }