// Path: src/main/java/com/myjeeva/digitalocean/common/LoadBalancerStatus.java
// public enum LoadBalancerStatus {
//   @SerializedName("new")
//   NEW("new"),
// 
//   @SerializedName("active")
//   ACTIVE("active"),
// 
//   @SerializedName("errored")
//   ERRORED("errored");
// 
//   private String value;
// 
//   private LoadBalancerStatus(String value) {
//     this.value = value;
//   }
// 
//   public static LoadBalancerStatus fromValue(String value) {
//     if (StringUtils.isBlank(value)) {
//       throw new IllegalArgumentException("Value cannot be null or empty!");
//     }
// 
//     for (LoadBalancerStatus ds : LoadBalancerStatus.values()) {
//       if (value.equalsIgnoreCase(ds.value)) {
//         return ds;
//       }
//     }
// 
//     throw new IllegalArgumentException("Cannot create enum from " + value + " value!");
//   }
// 
//   @Override
//   public String toString() {
//     return this.value;
//   }
// }
// 
// Path: src/main/java/com/myjeeva/digitalocean/common/LoadBalancingAlgorithm.java
// public enum LoadBalancingAlgorithm {
//   @SerializedName("round_robin")
//   ROUND_ROBIN("round_robin"),
// 
//   @SerializedName("least_connections")
//   LEAST_CONNECTIONS("least_connections");
// 
//   private String value;
// 
//   private LoadBalancingAlgorithm(String value) {
//     this.value = value;
//   }
// 
//   public static LoadBalancingAlgorithm fromValue(String value) {
//     if (StringUtils.isBlank(value)) {
//       throw new IllegalArgumentException("Value cannot be null or empty!");
//     }
// 
//     for (LoadBalancingAlgorithm ds : LoadBalancingAlgorithm.values()) {
//       if (value.equalsIgnoreCase(ds.value)) {
//         return ds;
//       }
//     }
// 
//     throw new IllegalArgumentException("Cannot create enum from " + value + " value!");
//   }
// 
//   @Override
//   public String toString() {
//     return this.value;
//   }
// }


import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import com.myjeeva.digitalocean.common.LoadBalancerStatus;
import com.myjeeva.digitalocean.common.LoadBalancingAlgorithm;
import java.util.Date;
import java.util.List;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;
/**
 * The MIT License
 *
 * <p>Copyright (c) 2013-2020 Jeevanandam M. (jeeva@myjeeva.com)
 *
 * <p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software
 * and associated documentation files (the "Software"), to deal in the Software without restriction,
 * including without limitation the rights to use, copy, modify, merge, publish, distribute,
 * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * <p>The above copyright notice and this permission notice shall be included in all copies or
 * substantial portions of the Software.
 *
 * <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
 * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */
package com.myjeeva.digitalocean.pojo;


/**
 * Represents Load Balancer object
 *
 * @author Thomas Lehoux (https://github.com/tlehoux)
 * @since v2.11
 */
public class LoadBalancer extends Base {

  private static final long serialVersionUID = -442836096026412279L;

  private String id;

  @Expose private String name;

  private String ip;

// Path: src/main/java/com/myjeeva/digitalocean/common/LoadBalancerStatus.java
// public enum LoadBalancerStatus {
//   @SerializedName("new")
//   NEW("new"),
// 
//   @SerializedName("active")
//   ACTIVE("active"),
// 
//   @SerializedName("errored")
//   ERRORED("errored");
// 
//   private String value;
// 
//   private LoadBalancerStatus(String value) {
//     this.value = value;
//   }
// 
//   public static LoadBalancerStatus fromValue(String value) {
//     if (StringUtils.isBlank(value)) {
//       throw new IllegalArgumentException("Value cannot be null or empty!");
//     }
// 
//     for (LoadBalancerStatus ds : LoadBalancerStatus.values()) {
//       if (value.equalsIgnoreCase(ds.value)) {
//         return ds;
//       }
//     }
// 
//     throw new IllegalArgumentException("Cannot create enum from " + value + " value!");
//   }
// 
//   @Override
//   public String toString() {
//     return this.value;
//   }
// }
// 
// Path: src/main/java/com/myjeeva/digitalocean/common/LoadBalancingAlgorithm.java
// public enum LoadBalancingAlgorithm {
//   @SerializedName("round_robin")
//   ROUND_ROBIN("round_robin"),
// 
//   @SerializedName("least_connections")
//   LEAST_CONNECTIONS("least_connections");
// 
//   private String value;
// 
//   private LoadBalancingAlgorithm(String value) {
//     this.value = value;
//   }
// 
//   public static LoadBalancingAlgorithm fromValue(String value) {
//     if (StringUtils.isBlank(value)) {
//       throw new IllegalArgumentException("Value cannot be null or empty!");
//     }
// 
//     for (LoadBalancingAlgorithm ds : LoadBalancingAlgorithm.values()) {
//       if (value.equalsIgnoreCase(ds.value)) {
//         return ds;
//       }
//     }
// 
//     throw new IllegalArgumentException("Cannot create enum from " + value + " value!");
//   }
// 
//   @Override
//   public String toString() {
//     return this.value;
//   }
// }


// Path: src/main/java/com/myjeeva/digitalocean/pojo/LoadBalancer.java
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import com.myjeeva.digitalocean.common.LoadBalancerStatus;
import com.myjeeva.digitalocean.common.LoadBalancingAlgorithm;
import java.util.Date;
import java.util.List;
import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

/**
 * The MIT License
 *
 * <p>Copyright (c) 2013-2020 Jeevanandam M. (jeeva@myjeeva.com)
 *
 * <p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software
 * and associated documentation files (the "Software"), to deal in the Software without restriction,
 * including without limitation the rights to use, copy, modify, merge, publish, distribute,
 * sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * <p>The above copyright notice and this permission notice shall be included in all copies or
 * substantial portions of the Software.
 *
 * <p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
 * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
 * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */
package com.myjeeva.digitalocean.pojo;


/**
 * Represents Load Balancer object
 *
 * @author Thomas Lehoux (https://github.com/tlehoux)
 * @since v2.11
 */
public class LoadBalancer extends Base {

  private static final long serialVersionUID = -442836096026412279L;

  private String id;

  @Expose private String name;

  private String ip;

  @Expose private LoadBalancingAlgorithm algorithm;