com.softlayer.api.service.network.lbaas.HealthMonitor Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of softlayer-api-client Show documentation
Show all versions of softlayer-api-client Show documentation
API client for accessing the SoftLayer API
package com.softlayer.api.service.network.lbaas;
import com.softlayer.api.ApiClient;
import com.softlayer.api.ResponseHandler;
import com.softlayer.api.annotation.ApiMethod;
import com.softlayer.api.annotation.ApiProperty;
import com.softlayer.api.annotation.ApiType;
import com.softlayer.api.service.Entity;
import com.softlayer.api.service.network.lbaas.LoadBalancer;
import com.softlayer.api.service.network.lbaas.LoadBalancerHealthMonitorConfiguration;
import java.util.GregorianCalendar;
import java.util.List;
import java.util.concurrent.Future;
/**
* The SoftLayer_Network_LBaaS_HealthMonitor type presents a structure containing attributes of a health monitor object associated with load balancer instance. Note that the relationship between backend (pool) and health monitor is N-to-1, especially that the pools object associated with a health monitor must have the same pair of protocol and port. Example: frontend FA: http, 80 - backend BA: tcp, 3456 - healthmonitor HM_tcp3456 frontend FB: https, 443 - backend BB: tcp, 3456 - healthmonitor HM_tcp3456 In above example both backends BA and BB share the same healthmonitor HM_tcp3456
*
* @see SoftLayer_Network_LBaaS_HealthMonitor
*/
@ApiType("SoftLayer_Network_LBaaS_HealthMonitor")
public class HealthMonitor extends Entity {
/**
* Create date of the health monitor instance
*/
@ApiProperty(canBeNullOrNotSet = true)
protected GregorianCalendar createDate;
public GregorianCalendar getCreateDate() {
return createDate;
}
public void setCreateDate(GregorianCalendar createDate) {
createDateSpecified = true;
this.createDate = createDate;
}
protected boolean createDateSpecified;
public boolean isCreateDateSpecified() {
return createDateSpecified;
}
public void unsetCreateDate() {
createDate = null;
createDateSpecified = false;
}
/**
* Health monitor's identifier
*/
@ApiProperty(canBeNullOrNotSet = true)
protected Long id;
public Long getId() {
return id;
}
public void setId(Long id) {
idSpecified = true;
this.id = id;
}
protected boolean idSpecified;
public boolean isIdSpecified() {
return idSpecified;
}
public void unsetId() {
id = null;
idSpecified = false;
}
/**
* Interval in seconds to perform health check
*/
@ApiProperty(canBeNullOrNotSet = true)
protected Long interval;
public Long getInterval() {
return interval;
}
public void setInterval(Long interval) {
intervalSpecified = true;
this.interval = interval;
}
protected boolean intervalSpecified;
public boolean isIntervalSpecified() {
return intervalSpecified;
}
public void unsetInterval() {
interval = null;
intervalSpecified = false;
}
/**
* Maximum number of health check retries in case of failure
*/
@ApiProperty(canBeNullOrNotSet = true)
protected Long maxRetries;
public Long getMaxRetries() {
return maxRetries;
}
public void setMaxRetries(Long maxRetries) {
maxRetriesSpecified = true;
this.maxRetries = maxRetries;
}
protected boolean maxRetriesSpecified;
public boolean isMaxRetriesSpecified() {
return maxRetriesSpecified;
}
public void unsetMaxRetries() {
maxRetries = null;
maxRetriesSpecified = false;
}
/**
* Modify date of the health monitor instance
*/
@ApiProperty(canBeNullOrNotSet = true)
protected GregorianCalendar modifyDate;
public GregorianCalendar getModifyDate() {
return modifyDate;
}
public void setModifyDate(GregorianCalendar modifyDate) {
modifyDateSpecified = true;
this.modifyDate = modifyDate;
}
protected boolean modifyDateSpecified;
public boolean isModifyDateSpecified() {
return modifyDateSpecified;
}
public void unsetModifyDate() {
modifyDate = null;
modifyDateSpecified = false;
}
/**
* Type of health check, valid values are "TCP", "HTTP" and "HTTPS"
*/
@ApiProperty(canBeNullOrNotSet = true)
protected String monitorType;
public String getMonitorType() {
return monitorType;
}
public void setMonitorType(String monitorType) {
monitorTypeSpecified = true;
this.monitorType = monitorType;
}
protected boolean monitorTypeSpecified;
public boolean isMonitorTypeSpecified() {
return monitorTypeSpecified;
}
public void unsetMonitorType() {
monitorType = null;
monitorTypeSpecified = false;
}
/**
* Provisioning status of the health monitor, supported values are "CREATE_PENDING",
*/
@ApiProperty(canBeNullOrNotSet = true)
protected String provisioningStatus;
public String getProvisioningStatus() {
return provisioningStatus;
}
public void setProvisioningStatus(String provisioningStatus) {
provisioningStatusSpecified = true;
this.provisioningStatus = provisioningStatus;
}
protected boolean provisioningStatusSpecified;
public boolean isProvisioningStatusSpecified() {
return provisioningStatusSpecified;
}
public void unsetProvisioningStatus() {
provisioningStatus = null;
provisioningStatusSpecified = false;
}
/**
* Timeout in seconds to wait for health checks response
*/
@ApiProperty(canBeNullOrNotSet = true)
protected Long timeout;
public Long getTimeout() {
return timeout;
}
public void setTimeout(Long timeout) {
timeoutSpecified = true;
this.timeout = timeout;
}
protected boolean timeoutSpecified;
public boolean isTimeoutSpecified() {
return timeoutSpecified;
}
public void unsetTimeout() {
timeout = null;
timeoutSpecified = false;
}
/**
* If monitorType is "HTTP" this specifies the whole URL path
*/
@ApiProperty(canBeNullOrNotSet = true)
protected String urlPath;
public String getUrlPath() {
return urlPath;
}
public void setUrlPath(String urlPath) {
urlPathSpecified = true;
this.urlPath = urlPath;
}
protected boolean urlPathSpecified;
public boolean isUrlPathSpecified() {
return urlPathSpecified;
}
public void unsetUrlPath() {
urlPath = null;
urlPathSpecified = false;
}
/**
* Health monitor's UUID
*/
@ApiProperty(canBeNullOrNotSet = true)
protected String uuid;
public String getUuid() {
return uuid;
}
public void setUuid(String uuid) {
uuidSpecified = true;
this.uuid = uuid;
}
protected boolean uuidSpecified;
public boolean isUuidSpecified() {
return uuidSpecified;
}
public void unsetUuid() {
uuid = null;
uuidSpecified = false;
}
public Service asService(ApiClient client) {
return service(client, id);
}
public static Service service(ApiClient client) {
return client.createService(Service.class, null);
}
public static Service service(ApiClient client, Long id) {
return client.createService(Service.class, id == null ? null : id.toString());
}
/**
* @see SoftLayer_Network_LBaaS_HealthMonitor
*/
@com.softlayer.api.annotation.ApiService("SoftLayer_Network_LBaaS_HealthMonitor")
public static interface Service extends com.softlayer.api.Service {
public ServiceAsync asAsync();
public Mask withNewMask();
public Mask withMask();
public void setMask(Mask mask);
/**
* @see SoftLayer_Network_LBaaS_HealthMonitor::getObject
*/
@ApiMethod(instanceRequired = true)
public HealthMonitor getObject();
/**
* Update load balancers health monitor and return load balancer object with listeners (frontend), pools (backend), health monitor server instances (members) and datacenter populated
*
* @see SoftLayer_Network_LBaaS_HealthMonitor::updateLoadBalancerHealthMonitors
*/
@ApiMethod
public LoadBalancer updateLoadBalancerHealthMonitors(String loadBalancerUuid, List healthMonitorConfigurations);
}
public static interface ServiceAsync extends com.softlayer.api.ServiceAsync {
public Mask withNewMask();
public Mask withMask();
public void setMask(Mask mask);
/**
* Async version of {@link Service#getObject}
*/
public Future getObject();
public Future> getObject(ResponseHandler callback);
/**
* Async version of {@link Service#updateLoadBalancerHealthMonitors}
*/
public Future updateLoadBalancerHealthMonitors(String loadBalancerUuid, List healthMonitorConfigurations);
public Future> updateLoadBalancerHealthMonitors(String loadBalancerUuid, List healthMonitorConfigurations, ResponseHandler callback);
}
public static class Mask extends com.softlayer.api.service.Entity.Mask {
public Mask createDate() {
withLocalProperty("createDate");
return this;
}
public Mask id() {
withLocalProperty("id");
return this;
}
public Mask interval() {
withLocalProperty("interval");
return this;
}
public Mask maxRetries() {
withLocalProperty("maxRetries");
return this;
}
public Mask modifyDate() {
withLocalProperty("modifyDate");
return this;
}
public Mask monitorType() {
withLocalProperty("monitorType");
return this;
}
public Mask provisioningStatus() {
withLocalProperty("provisioningStatus");
return this;
}
public Mask timeout() {
withLocalProperty("timeout");
return this;
}
public Mask urlPath() {
withLocalProperty("urlPath");
return this;
}
public Mask uuid() {
withLocalProperty("uuid");
return this;
}
}
}