2 * Copyright (C) 2014 Red Hat, Inc.
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.controller.networkconfig.neutron;
11 import org.slf4j.Logger;
12 import org.slf4j.LoggerFactory;
14 import javax.xml.bind.annotation.XmlAccessType;
15 import javax.xml.bind.annotation.XmlAccessorType;
16 import javax.xml.bind.annotation.XmlElement;
17 import javax.xml.bind.annotation.XmlRootElement;
18 import java.io.Serializable;
19 import java.util.Iterator;
20 import java.util.List;
23 * OpenStack Neutron v2.0 Load Balancer as a service
24 * (LBaaS) bindings. See OpenStack Network API
25 * v2.0 Reference for description of the fields:
26 * Implemented fields are as follows:
37 * expected_codes String
38 * admin_state_up Boolean
40 * http://docs.openstack.org/api/openstack-network/2.0/openstack-network.pdf
44 @XmlAccessorType(XmlAccessType.NONE)
46 public class NeutronLoadBalancerHealthMonitor implements Serializable {
47 private static final long serialVersionUID = 1L;
48 private static final Logger logger = LoggerFactory.getLogger(NeutronLoadBalancer.class);
50 @XmlElement(name="id")
51 String loadBalancerHealthMonitorID;
53 @XmlElement (name="tenant_id")
54 String loadBalancerHealthMonitorTenantID;
56 @XmlElement (name="type")
57 String loadBalancerHealthMonitorType;
59 @XmlElement (name="delay")
60 Integer loadBalancerHealthMonitorDelay;
62 @XmlElement (name="timeout")
63 Integer loadBalancerHealthMonitorTimeout;
65 @XmlElement (name="max_retries")
66 Integer loadBalancerHealthMonitorMaxRetries;
68 @XmlElement (name="http_method")
69 String loadBalancerHealthMonitorHttpMethod;
71 @XmlElement (name="url_path")
72 String loadBalancerHealthMonitorUrlPath;
74 @XmlElement (name="expected_codes")
75 String loadBalancerHealthMonitorExpectedCodes;
77 @XmlElement (defaultValue="true", name="admin_state_up")
78 Boolean loadBalancerHealthMonitorAdminStateIsUp;
80 @XmlElement (name="status")
81 String loadBalancerHealthMonitorStatus;
83 public String getLoadBalancerHealthMonitorID() {
84 return loadBalancerHealthMonitorID;
87 public void setLoadBalancerHealthMonitorID(String loadBalancerHealthMonitorID) {
88 this.loadBalancerHealthMonitorID = loadBalancerHealthMonitorID;
91 public String getLoadBalancerHealthMonitorTenantID() {
92 return loadBalancerHealthMonitorTenantID;
95 public void setLoadBalancerHealthMonitorTenantID(String loadBalancerHealthMonitorTenantID) {
96 this.loadBalancerHealthMonitorTenantID = loadBalancerHealthMonitorTenantID;
99 public String getLoadBalancerHealthMonitorType() {
100 return loadBalancerHealthMonitorType;
103 public void setLoadBalancerHealthMonitorType(String loadBalancerHealthMonitorType) {
104 this.loadBalancerHealthMonitorType = loadBalancerHealthMonitorType;
107 public Integer getLoadBalancerHealthMonitorDelay() {
108 return loadBalancerHealthMonitorDelay;
111 public void setLoadBalancerHealthMonitorDelay(Integer loadBalancerHealthMonitorDelay) {
112 this.loadBalancerHealthMonitorDelay = loadBalancerHealthMonitorDelay;
115 public Integer getLoadBalancerHealthMonitorTimeout() {
116 return loadBalancerHealthMonitorTimeout;
119 public void setLoadBalancerHealthMonitorTimeout(Integer loadBalancerHealthMonitorTimeout) {
120 this.loadBalancerHealthMonitorTimeout = loadBalancerHealthMonitorTimeout;
123 public Integer getLoadBalancerHealthMonitorMaxRetries() {
124 return loadBalancerHealthMonitorMaxRetries;
127 public void setLoadBalancerHealthMonitorMaxRetries(Integer loadBalancerHealthMonitorMaxRetries) {
128 this.loadBalancerHealthMonitorMaxRetries = loadBalancerHealthMonitorMaxRetries;
131 public String getLoadBalancerHealthMonitorHttpMethod() {
132 return loadBalancerHealthMonitorHttpMethod;
135 public void setLoadBalancerHealthMonitorHttpMethod(String loadBalancerHealthMonitorHttpMethod) {
136 this.loadBalancerHealthMonitorHttpMethod = loadBalancerHealthMonitorHttpMethod;
139 public String getLoadBalancerHealthMonitorUrlPath() {
140 return loadBalancerHealthMonitorUrlPath;
143 public void setLoadBalancerHealthMonitorUrlPath(String loadBalancerHealthMonitorUrlPath) {
144 this.loadBalancerHealthMonitorUrlPath = loadBalancerHealthMonitorUrlPath;
147 public String getLoadBalancerHealthMonitorExpectedCodes() {
148 return loadBalancerHealthMonitorExpectedCodes;
151 public void setLoadBalancerHealthMonitorExpectedCodes(String loadBalancerHealthMonitorExpectedCodes) {
152 this.loadBalancerHealthMonitorExpectedCodes = loadBalancerHealthMonitorExpectedCodes;
155 public Boolean getLoadBalancerHealthMonitorAdminStateIsUp() {
156 return loadBalancerHealthMonitorAdminStateIsUp;
159 public void setLoadBalancerHealthMonitorAdminStateIsUp(Boolean loadBalancerHealthMonitorAdminStateIsUp) {
160 this.loadBalancerHealthMonitorAdminStateIsUp = loadBalancerHealthMonitorAdminStateIsUp;
163 public String getLoadBalancerHealthMonitorStatus() {
164 return loadBalancerHealthMonitorStatus;
167 public void setLoadBalancerHealthMonitorStatus(String loadBalancerHealthMonitorStatus) {
168 this.loadBalancerHealthMonitorStatus = loadBalancerHealthMonitorStatus;
171 public NeutronLoadBalancerHealthMonitor extractFields(List<String> fields) {
172 NeutronLoadBalancerHealthMonitor ans = new NeutronLoadBalancerHealthMonitor();
173 Iterator<String> i = fields.iterator();
174 while (i.hasNext()) {
176 if (s.equals("id")) {
177 ans.setLoadBalancerHealthMonitorID(this.getLoadBalancerHealthMonitorID());
179 if (s.equals("tenant_id")) {
180 ans.setLoadBalancerHealthMonitorTenantID(this.getLoadBalancerHealthMonitorTenantID());
182 if (s.equals("type")) {
183 ans.setLoadBalancerHealthMonitorType(this.getLoadBalancerHealthMonitorType());
185 if (s.equals("delay")) {
186 ans.setLoadBalancerHealthMonitorDelay(this.getLoadBalancerHealthMonitorDelay());
188 if (s.equals("timeout")) {
189 ans.setLoadBalancerHealthMonitorTimeout(this.getLoadBalancerHealthMonitorTimeout());
191 if (s.equals("max_retries")) {
192 ans.setLoadBalancerHealthMonitorMaxRetries(this.getLoadBalancerHealthMonitorMaxRetries());
194 if (s.equals("http_method")) {
195 ans.setLoadBalancerHealthMonitorHttpMethod(this.getLoadBalancerHealthMonitorHttpMethod());
197 if(s.equals("url_path")) {
198 ans.setLoadBalancerHealthMonitorUrlPath(this.getLoadBalancerHealthMonitorUrlPath());
200 if (s.equals("expected_codes")) {
201 ans.setLoadBalancerHealthMonitorExpectedCodes(this.getLoadBalancerHealthMonitorExpectedCodes());
203 if (s.equals("admin_state_up")) {
204 ans.setLoadBalancerHealthMonitorAdminStateIsUp(loadBalancerHealthMonitorAdminStateIsUp);
206 if (s.equals("status")) {
207 ans.setLoadBalancerHealthMonitorStatus(this.getLoadBalancerHealthMonitorStatus());
213 @Override public String toString() {
214 return "NeutronLoadBalancerHealthMonitor{" +
215 "loadBalancerHealthMonitorID='" + loadBalancerHealthMonitorID + '\'' +
216 ", loadBalancerHealthMonitorTenantID='" + loadBalancerHealthMonitorTenantID + '\'' +
217 ", loadBalancerHealthMonitorType='" + loadBalancerHealthMonitorType + '\'' +
218 ", loadBalancerHealthMonitorDelay=" + loadBalancerHealthMonitorDelay +
219 ", loadBalancerHealthMonitorTimeout=" + loadBalancerHealthMonitorTimeout +
220 ", loadBalancerHealthMonitorMaxRetries=" + loadBalancerHealthMonitorMaxRetries +
221 ", loadBalancerHealthMonitorHttpMethod='" + loadBalancerHealthMonitorHttpMethod + '\'' +
222 ", loadBalancerHealthMonitorUrlPath='" + loadBalancerHealthMonitorUrlPath + '\'' +
223 ", loadBalancerHealthMonitorExpectedCodes='" + loadBalancerHealthMonitorExpectedCodes + '\'' +
224 ", loadBalancerHealthMonitorAdminStateIsUp=" + loadBalancerHealthMonitorAdminStateIsUp +
225 ", loadBalancerHealthMonitorStatus='" + loadBalancerHealthMonitorStatus + '\'' +