2 * Copyright (C) 2014 Red Hat, Inc. All rights reserved.
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.neutron.spi;
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 javax.xml.bind.annotation.XmlTransient;
16 import java.io.Serializable;
17 import java.util.Iterator;
18 import java.util.List;
21 @XmlAccessorType(XmlAccessType.NONE)
23 public class NeutronLoadBalancerPoolMember implements Serializable {
25 private static final long serialVersionUID = 1L;
28 * TODO: Plumb into LBaaS Pool. Members are nested underneath Pool CRUD.
30 @XmlElement (name = "id")
33 @XmlElement (name = "tenant_id")
34 String poolMemberTenantID;
36 @XmlElement (name = "address")
37 String poolMemberAddress;
39 @XmlElement (name = "protocol_port")
40 Integer poolMemberProtoPort;
42 @XmlElement (name = "admin_state_up")
43 Boolean poolMemberAdminStateIsUp;
45 @XmlElement (name = "weight")
46 Integer poolMemberWeight;
48 @XmlElement (name = "subnet_id")
49 String poolMemberSubnetID;
51 @XmlElement (name = "status")
52 String poolMemberStatus;
56 public NeutronLoadBalancerPoolMember() {
60 public String getPoolID() {
64 public void setPoolID(String poolID) {
68 public String getPoolMemberID() {
72 public void setPoolMemberID(String poolMemberID) {
73 this.poolMemberID = poolMemberID;
76 public String getPoolMemberTenantID() {
77 return poolMemberTenantID;
80 public void setPoolMemberTenantID(String poolMemberTenantID) {
81 this.poolMemberTenantID = poolMemberTenantID;
84 public String getPoolMemberAddress() {
85 return poolMemberAddress;
88 public void setPoolMemberAddress(String poolMemberAddress) {
89 this.poolMemberAddress = poolMemberAddress;
92 public Integer getPoolMemberProtoPort() {
93 return poolMemberProtoPort;
96 public void setPoolMemberProtoPort(Integer poolMemberProtoPort) {
97 this.poolMemberProtoPort = poolMemberProtoPort;
100 public Boolean getPoolMemberAdminStateIsUp() {
101 return poolMemberAdminStateIsUp;
104 public void setPoolMemberAdminStateIsUp(Boolean poolMemberAdminStateIsUp) {
105 this.poolMemberAdminStateIsUp = poolMemberAdminStateIsUp;
108 public Integer getPoolMemberWeight() {
109 return poolMemberWeight;
112 public void setPoolMemberWeight(Integer poolMemberWeight) {
113 this.poolMemberWeight = poolMemberWeight;
116 public String getPoolMemberSubnetID() {
117 return poolMemberSubnetID;
120 public void setPoolMemberSubnetID(String poolMemberSubnetID) {
121 this.poolMemberSubnetID = poolMemberSubnetID;
124 public String getPoolMemberStatus() {
125 return poolMemberStatus;
128 public void setPoolMemberStatus(String poolMemberStatus) {
129 this.poolMemberStatus = poolMemberStatus;
132 public NeutronLoadBalancerPoolMember extractFields(List<String> fields) {
133 NeutronLoadBalancerPoolMember ans = new NeutronLoadBalancerPoolMember();
134 Iterator<String> i = fields.iterator();
135 while (i.hasNext()) {
137 if (s.equals("id")) {
138 ans.setPoolMemberID(this.getPoolMemberID());
140 if (s.equals("pool_id")) {
141 ans.setPoolID(this.getPoolID());
143 if (s.equals("tenant_id")) {
144 ans.setPoolMemberTenantID(this.getPoolMemberTenantID());
146 if (s.equals("address")) {
147 ans.setPoolMemberAddress(this.getPoolMemberAddress());
149 if(s.equals("protocol_port")) {
150 ans.setPoolMemberProtoPort(this.getPoolMemberProtoPort());
152 if (s.equals("admin_state_up")) {
153 ans.setPoolMemberAdminStateIsUp(poolMemberAdminStateIsUp);
155 if(s.equals("weight")) {
156 ans.setPoolMemberWeight(this.getPoolMemberWeight());
158 if(s.equals("subnet_id")) {
159 ans.setPoolMemberSubnetID(this.getPoolMemberSubnetID());
161 if (s.equals("status")) {
162 ans.setPoolMemberStatus(this.getPoolMemberStatus());
167 @Override public String toString() {
168 return "NeutronLoadBalancerPoolMember{" +
169 "poolMemberID='" + poolMemberID + '\'' +
170 ", poolID='" + poolID + '\'' +
171 ", poolMemberTenantID='" + poolMemberTenantID + '\'' +
172 ", poolMemberAddress='" + poolMemberAddress + '\'' +
173 ", poolMemberProtoPort=" + poolMemberProtoPort +
174 ", poolMemberAdminStateIsUp=" + poolMemberAdminStateIsUp +
175 ", poolMemberWeight=" + poolMemberWeight +
176 ", poolMemberSubnetID='" + poolMemberSubnetID + '\'' +
177 ", poolMemberStatus='" + poolMemberStatus + '\'' +