com.aliyun.ros.cdk.alb.RosServerGroup Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ros-cdk-alb Show documentation
Show all versions of ros-cdk-alb Show documentation
Aliyun SDK Copyright (C) Alibaba Cloud Computing All rights reserved. http://www.aliyun.com
The newest version!
package com.aliyun.ros.cdk.alb;
/**
* This class is a base encapsulation around the ROS resource type ALIYUN::ALB::ServerGroup
, which is used to create a server group.
*/
@javax.annotation.Generated(value = "jsii-pacmak/1.85.0 (build 08ee592)", date = "2024-12-13T06:45:04.018Z")
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.alb.$Module.class, fqn = "@alicloud/ros-cdk-alb.RosServerGroup")
public class RosServerGroup extends com.aliyun.ros.cdk.core.RosResource {
protected RosServerGroup(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
}
protected RosServerGroup(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) {
super(initializationMode);
}
static {
ROS_RESOURCE_TYPE_NAME = software.amazon.jsii.JsiiObject.jsiiStaticGet(com.aliyun.ros.cdk.alb.RosServerGroup.class, "ROS_RESOURCE_TYPE_NAME", software.amazon.jsii.NativeType.forClass(java.lang.String.class));
}
/**
* @param scope - scope in which this resource is defined.
This parameter is required.
* @param id - scoped id of the resource.
This parameter is required.
* @param props - resource properties.
This parameter is required.
* @param enableResourcePropertyConstraint This parameter is required.
*/
public RosServerGroup(final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.alb.RosServerGroupProps props, final @org.jetbrains.annotations.NotNull java.lang.Boolean enableResourcePropertyConstraint) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), java.util.Objects.requireNonNull(props, "props is required"), java.util.Objects.requireNonNull(enableResourcePropertyConstraint, "enableResourcePropertyConstraint is required") });
}
@Override
protected @org.jetbrains.annotations.NotNull java.util.Map renderProperties(final @org.jetbrains.annotations.NotNull java.util.Map props) {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "renderProperties", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)), new Object[] { java.util.Objects.requireNonNull(props, "props is required") }));
}
/**
* The resource type name for this resource class.
*/
public final static java.lang.String ROS_RESOURCE_TYPE_NAME;
/**
*/
public @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.IResolvable getAttrServerGroupId() {
return software.amazon.jsii.Kernel.get(this, "attrServerGroupId", software.amazon.jsii.NativeType.forClass(com.aliyun.ros.cdk.core.IResolvable.class));
}
@Override
protected @org.jetbrains.annotations.NotNull java.util.Map getRosProperties() {
return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.get(this, "rosProperties", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class))));
}
public @org.jetbrains.annotations.NotNull java.lang.Boolean getEnableResourcePropertyConstraint() {
return software.amazon.jsii.Kernel.get(this, "enableResourcePropertyConstraint", software.amazon.jsii.NativeType.forClass(java.lang.Boolean.class));
}
public void setEnableResourcePropertyConstraint(final @org.jetbrains.annotations.NotNull java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "enableResourcePropertyConstraint", java.util.Objects.requireNonNull(value, "enableResourcePropertyConstraint is required"));
}
/**
*/
public @org.jetbrains.annotations.NotNull java.lang.Object getHealthCheckConfig() {
return software.amazon.jsii.Kernel.get(this, "healthCheckConfig", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setHealthCheckConfig(final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "healthCheckConfig", java.util.Objects.requireNonNull(value, "healthCheckConfig is required"));
}
/**
*/
public void setHealthCheckConfig(final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.alb.RosServerGroup.HealthCheckConfigProperty value) {
software.amazon.jsii.Kernel.set(this, "healthCheckConfig", java.util.Objects.requireNonNull(value, "healthCheckConfig is required"));
}
/**
*/
public @org.jetbrains.annotations.NotNull java.lang.Object getServerGroupName() {
return software.amazon.jsii.Kernel.get(this, "serverGroupName", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setServerGroupName(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "serverGroupName", java.util.Objects.requireNonNull(value, "serverGroupName is required"));
}
/**
*/
public void setServerGroupName(final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "serverGroupName", java.util.Objects.requireNonNull(value, "serverGroupName is required"));
}
/**
*/
public @org.jetbrains.annotations.NotNull java.lang.Object getVpcId() {
return software.amazon.jsii.Kernel.get(this, "vpcId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setVpcId(final @org.jetbrains.annotations.NotNull java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "vpcId", java.util.Objects.requireNonNull(value, "vpcId is required"));
}
/**
*/
public void setVpcId(final @org.jetbrains.annotations.NotNull com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "vpcId", java.util.Objects.requireNonNull(value, "vpcId is required"));
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getConnectionDrainConfig() {
return software.amazon.jsii.Kernel.get(this, "connectionDrainConfig", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setConnectionDrainConfig(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "connectionDrainConfig", value);
}
/**
*/
public void setConnectionDrainConfig(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.alb.RosServerGroup.ConnectionDrainConfigProperty value) {
software.amazon.jsii.Kernel.set(this, "connectionDrainConfig", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getProtocol() {
return software.amazon.jsii.Kernel.get(this, "protocol", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setProtocol(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "protocol", value);
}
/**
*/
public void setProtocol(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "protocol", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getResourceGroupId() {
return software.amazon.jsii.Kernel.get(this, "resourceGroupId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setResourceGroupId(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "resourceGroupId", value);
}
/**
*/
public void setResourceGroupId(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "resourceGroupId", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getScheduler() {
return software.amazon.jsii.Kernel.get(this, "scheduler", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setScheduler(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "scheduler", value);
}
/**
*/
public void setScheduler(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "scheduler", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getServerGroupType() {
return software.amazon.jsii.Kernel.get(this, "serverGroupType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setServerGroupType(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "serverGroupType", value);
}
/**
*/
public void setServerGroupType(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "serverGroupType", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getServiceName() {
return software.amazon.jsii.Kernel.get(this, "serviceName", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setServiceName(final @org.jetbrains.annotations.Nullable java.lang.String value) {
software.amazon.jsii.Kernel.set(this, "serviceName", value);
}
/**
*/
public void setServiceName(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "serviceName", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getSlowStartConfig() {
return software.amazon.jsii.Kernel.get(this, "slowStartConfig", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setSlowStartConfig(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "slowStartConfig", value);
}
/**
*/
public void setSlowStartConfig(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.alb.RosServerGroup.SlowStartConfigProperty value) {
software.amazon.jsii.Kernel.set(this, "slowStartConfig", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getStickySessionConfig() {
return software.amazon.jsii.Kernel.get(this, "stickySessionConfig", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setStickySessionConfig(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "stickySessionConfig", value);
}
/**
*/
public void setStickySessionConfig(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.alb.RosServerGroup.StickySessionConfigProperty value) {
software.amazon.jsii.Kernel.set(this, "stickySessionConfig", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.util.List getTags() {
return java.util.Optional.ofNullable((java.util.List)(software.amazon.jsii.Kernel.get(this, "tags", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(com.aliyun.ros.cdk.alb.RosServerGroup.TagsProperty.class))))).map(java.util.Collections::unmodifiableList).orElse(null);
}
/**
*/
public void setTags(final @org.jetbrains.annotations.Nullable java.util.List value) {
software.amazon.jsii.Kernel.set(this, "tags", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getUchConfig() {
return software.amazon.jsii.Kernel.get(this, "uchConfig", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setUchConfig(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "uchConfig", value);
}
/**
*/
public void setUchConfig(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.alb.RosServerGroup.UchConfigProperty value) {
software.amazon.jsii.Kernel.set(this, "uchConfig", value);
}
/**
*/
public @org.jetbrains.annotations.Nullable java.lang.Object getUpstreamKeepaliveEnabled() {
return software.amazon.jsii.Kernel.get(this, "upstreamKeepaliveEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
*/
public void setUpstreamKeepaliveEnabled(final @org.jetbrains.annotations.Nullable java.lang.Boolean value) {
software.amazon.jsii.Kernel.set(this, "upstreamKeepaliveEnabled", value);
}
/**
*/
public void setUpstreamKeepaliveEnabled(final @org.jetbrains.annotations.Nullable com.aliyun.ros.cdk.core.IResolvable value) {
software.amazon.jsii.Kernel.set(this, "upstreamKeepaliveEnabled", value);
}
/**
*/
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.alb.$Module.class, fqn = "@alicloud/ros-cdk-alb.RosServerGroup.ConnectionDrainConfigProperty")
@software.amazon.jsii.Jsii.Proxy(ConnectionDrainConfigProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface ConnectionDrainConfigProperty extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getConnectionDrainEnabled();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getConnectionDrainTimeout();
/**
* @return a {@link Builder} of {@link ConnectionDrainConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link ConnectionDrainConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object connectionDrainEnabled;
java.lang.Object connectionDrainTimeout;
/**
* Sets the value of {@link ConnectionDrainConfigProperty#getConnectionDrainEnabled}
* @param connectionDrainEnabled the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder connectionDrainEnabled(java.lang.Boolean connectionDrainEnabled) {
this.connectionDrainEnabled = connectionDrainEnabled;
return this;
}
/**
* Sets the value of {@link ConnectionDrainConfigProperty#getConnectionDrainEnabled}
* @param connectionDrainEnabled the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder connectionDrainEnabled(com.aliyun.ros.cdk.core.IResolvable connectionDrainEnabled) {
this.connectionDrainEnabled = connectionDrainEnabled;
return this;
}
/**
* Sets the value of {@link ConnectionDrainConfigProperty#getConnectionDrainTimeout}
* @param connectionDrainTimeout the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder connectionDrainTimeout(java.lang.Number connectionDrainTimeout) {
this.connectionDrainTimeout = connectionDrainTimeout;
return this;
}
/**
* Sets the value of {@link ConnectionDrainConfigProperty#getConnectionDrainTimeout}
* @param connectionDrainTimeout the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder connectionDrainTimeout(com.aliyun.ros.cdk.core.IResolvable connectionDrainTimeout) {
this.connectionDrainTimeout = connectionDrainTimeout;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link ConnectionDrainConfigProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public ConnectionDrainConfigProperty build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link ConnectionDrainConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ConnectionDrainConfigProperty {
private final java.lang.Object connectionDrainEnabled;
private final java.lang.Object connectionDrainTimeout;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.connectionDrainEnabled = software.amazon.jsii.Kernel.get(this, "connectionDrainEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.connectionDrainTimeout = software.amazon.jsii.Kernel.get(this, "connectionDrainTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.connectionDrainEnabled = java.util.Objects.requireNonNull(builder.connectionDrainEnabled, "connectionDrainEnabled is required");
this.connectionDrainTimeout = java.util.Objects.requireNonNull(builder.connectionDrainTimeout, "connectionDrainTimeout is required");
}
@Override
public final java.lang.Object getConnectionDrainEnabled() {
return this.connectionDrainEnabled;
}
@Override
public final java.lang.Object getConnectionDrainTimeout() {
return this.connectionDrainTimeout;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("connectionDrainEnabled", om.valueToTree(this.getConnectionDrainEnabled()));
data.set("connectionDrainTimeout", om.valueToTree(this.getConnectionDrainTimeout()));
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-alb.RosServerGroup.ConnectionDrainConfigProperty"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
ConnectionDrainConfigProperty.Jsii$Proxy that = (ConnectionDrainConfigProperty.Jsii$Proxy) o;
if (!connectionDrainEnabled.equals(that.connectionDrainEnabled)) return false;
return this.connectionDrainTimeout.equals(that.connectionDrainTimeout);
}
@Override
public final int hashCode() {
int result = this.connectionDrainEnabled.hashCode();
result = 31 * result + (this.connectionDrainTimeout.hashCode());
return result;
}
}
}
/**
*/
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.alb.$Module.class, fqn = "@alicloud/ros-cdk-alb.RosServerGroup.HealthCheckConfigProperty")
@software.amazon.jsii.Jsii.Proxy(HealthCheckConfigProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface HealthCheckConfigProperty extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getHealthCheckEnabled();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckCodes() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckConnectPort() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckHost() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckHttpVersion() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckInterval() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckMethod() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckPath() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckProtocol() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthCheckTimeout() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getHealthyThreshold() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getUnhealthyThreshold() {
return null;
}
/**
* @return a {@link Builder} of {@link HealthCheckConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link HealthCheckConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object healthCheckEnabled;
java.lang.Object healthCheckCodes;
java.lang.Object healthCheckConnectPort;
java.lang.Object healthCheckHost;
java.lang.Object healthCheckHttpVersion;
java.lang.Object healthCheckInterval;
java.lang.Object healthCheckMethod;
java.lang.Object healthCheckPath;
java.lang.Object healthCheckProtocol;
java.lang.Object healthCheckTimeout;
java.lang.Object healthyThreshold;
java.lang.Object unhealthyThreshold;
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckEnabled}
* @param healthCheckEnabled the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckEnabled(java.lang.Boolean healthCheckEnabled) {
this.healthCheckEnabled = healthCheckEnabled;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckEnabled}
* @param healthCheckEnabled the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckEnabled(com.aliyun.ros.cdk.core.IResolvable healthCheckEnabled) {
this.healthCheckEnabled = healthCheckEnabled;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckCodes}
* @param healthCheckCodes the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckCodes(com.aliyun.ros.cdk.core.IResolvable healthCheckCodes) {
this.healthCheckCodes = healthCheckCodes;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckCodes}
* @param healthCheckCodes the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckCodes(java.util.List extends java.lang.Object> healthCheckCodes) {
this.healthCheckCodes = healthCheckCodes;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckConnectPort}
* @param healthCheckConnectPort the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckConnectPort(java.lang.Number healthCheckConnectPort) {
this.healthCheckConnectPort = healthCheckConnectPort;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckConnectPort}
* @param healthCheckConnectPort the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckConnectPort(com.aliyun.ros.cdk.core.IResolvable healthCheckConnectPort) {
this.healthCheckConnectPort = healthCheckConnectPort;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckHost}
* @param healthCheckHost the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckHost(java.lang.String healthCheckHost) {
this.healthCheckHost = healthCheckHost;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckHost}
* @param healthCheckHost the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckHost(com.aliyun.ros.cdk.core.IResolvable healthCheckHost) {
this.healthCheckHost = healthCheckHost;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckHttpVersion}
* @param healthCheckHttpVersion the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckHttpVersion(java.lang.String healthCheckHttpVersion) {
this.healthCheckHttpVersion = healthCheckHttpVersion;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckHttpVersion}
* @param healthCheckHttpVersion the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckHttpVersion(com.aliyun.ros.cdk.core.IResolvable healthCheckHttpVersion) {
this.healthCheckHttpVersion = healthCheckHttpVersion;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckInterval}
* @param healthCheckInterval the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckInterval(java.lang.Number healthCheckInterval) {
this.healthCheckInterval = healthCheckInterval;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckInterval}
* @param healthCheckInterval the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckInterval(com.aliyun.ros.cdk.core.IResolvable healthCheckInterval) {
this.healthCheckInterval = healthCheckInterval;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckMethod}
* @param healthCheckMethod the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckMethod(java.lang.String healthCheckMethod) {
this.healthCheckMethod = healthCheckMethod;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckMethod}
* @param healthCheckMethod the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckMethod(com.aliyun.ros.cdk.core.IResolvable healthCheckMethod) {
this.healthCheckMethod = healthCheckMethod;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckPath}
* @param healthCheckPath the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckPath(java.lang.String healthCheckPath) {
this.healthCheckPath = healthCheckPath;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckPath}
* @param healthCheckPath the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckPath(com.aliyun.ros.cdk.core.IResolvable healthCheckPath) {
this.healthCheckPath = healthCheckPath;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckProtocol}
* @param healthCheckProtocol the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckProtocol(java.lang.String healthCheckProtocol) {
this.healthCheckProtocol = healthCheckProtocol;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckProtocol}
* @param healthCheckProtocol the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckProtocol(com.aliyun.ros.cdk.core.IResolvable healthCheckProtocol) {
this.healthCheckProtocol = healthCheckProtocol;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckTimeout}
* @param healthCheckTimeout the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckTimeout(java.lang.Number healthCheckTimeout) {
this.healthCheckTimeout = healthCheckTimeout;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthCheckTimeout}
* @param healthCheckTimeout the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthCheckTimeout(com.aliyun.ros.cdk.core.IResolvable healthCheckTimeout) {
this.healthCheckTimeout = healthCheckTimeout;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthyThreshold}
* @param healthyThreshold the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthyThreshold(java.lang.Number healthyThreshold) {
this.healthyThreshold = healthyThreshold;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getHealthyThreshold}
* @param healthyThreshold the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder healthyThreshold(com.aliyun.ros.cdk.core.IResolvable healthyThreshold) {
this.healthyThreshold = healthyThreshold;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getUnhealthyThreshold}
* @param unhealthyThreshold the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder unhealthyThreshold(java.lang.Number unhealthyThreshold) {
this.unhealthyThreshold = unhealthyThreshold;
return this;
}
/**
* Sets the value of {@link HealthCheckConfigProperty#getUnhealthyThreshold}
* @param unhealthyThreshold the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder unhealthyThreshold(com.aliyun.ros.cdk.core.IResolvable unhealthyThreshold) {
this.unhealthyThreshold = unhealthyThreshold;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link HealthCheckConfigProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public HealthCheckConfigProperty build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link HealthCheckConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements HealthCheckConfigProperty {
private final java.lang.Object healthCheckEnabled;
private final java.lang.Object healthCheckCodes;
private final java.lang.Object healthCheckConnectPort;
private final java.lang.Object healthCheckHost;
private final java.lang.Object healthCheckHttpVersion;
private final java.lang.Object healthCheckInterval;
private final java.lang.Object healthCheckMethod;
private final java.lang.Object healthCheckPath;
private final java.lang.Object healthCheckProtocol;
private final java.lang.Object healthCheckTimeout;
private final java.lang.Object healthyThreshold;
private final java.lang.Object unhealthyThreshold;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.healthCheckEnabled = software.amazon.jsii.Kernel.get(this, "healthCheckEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckCodes = software.amazon.jsii.Kernel.get(this, "healthCheckCodes", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckConnectPort = software.amazon.jsii.Kernel.get(this, "healthCheckConnectPort", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckHost = software.amazon.jsii.Kernel.get(this, "healthCheckHost", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckHttpVersion = software.amazon.jsii.Kernel.get(this, "healthCheckHttpVersion", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckInterval = software.amazon.jsii.Kernel.get(this, "healthCheckInterval", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckMethod = software.amazon.jsii.Kernel.get(this, "healthCheckMethod", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckPath = software.amazon.jsii.Kernel.get(this, "healthCheckPath", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckProtocol = software.amazon.jsii.Kernel.get(this, "healthCheckProtocol", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthCheckTimeout = software.amazon.jsii.Kernel.get(this, "healthCheckTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.healthyThreshold = software.amazon.jsii.Kernel.get(this, "healthyThreshold", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.unhealthyThreshold = software.amazon.jsii.Kernel.get(this, "unhealthyThreshold", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.healthCheckEnabled = java.util.Objects.requireNonNull(builder.healthCheckEnabled, "healthCheckEnabled is required");
this.healthCheckCodes = builder.healthCheckCodes;
this.healthCheckConnectPort = builder.healthCheckConnectPort;
this.healthCheckHost = builder.healthCheckHost;
this.healthCheckHttpVersion = builder.healthCheckHttpVersion;
this.healthCheckInterval = builder.healthCheckInterval;
this.healthCheckMethod = builder.healthCheckMethod;
this.healthCheckPath = builder.healthCheckPath;
this.healthCheckProtocol = builder.healthCheckProtocol;
this.healthCheckTimeout = builder.healthCheckTimeout;
this.healthyThreshold = builder.healthyThreshold;
this.unhealthyThreshold = builder.unhealthyThreshold;
}
@Override
public final java.lang.Object getHealthCheckEnabled() {
return this.healthCheckEnabled;
}
@Override
public final java.lang.Object getHealthCheckCodes() {
return this.healthCheckCodes;
}
@Override
public final java.lang.Object getHealthCheckConnectPort() {
return this.healthCheckConnectPort;
}
@Override
public final java.lang.Object getHealthCheckHost() {
return this.healthCheckHost;
}
@Override
public final java.lang.Object getHealthCheckHttpVersion() {
return this.healthCheckHttpVersion;
}
@Override
public final java.lang.Object getHealthCheckInterval() {
return this.healthCheckInterval;
}
@Override
public final java.lang.Object getHealthCheckMethod() {
return this.healthCheckMethod;
}
@Override
public final java.lang.Object getHealthCheckPath() {
return this.healthCheckPath;
}
@Override
public final java.lang.Object getHealthCheckProtocol() {
return this.healthCheckProtocol;
}
@Override
public final java.lang.Object getHealthCheckTimeout() {
return this.healthCheckTimeout;
}
@Override
public final java.lang.Object getHealthyThreshold() {
return this.healthyThreshold;
}
@Override
public final java.lang.Object getUnhealthyThreshold() {
return this.unhealthyThreshold;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("healthCheckEnabled", om.valueToTree(this.getHealthCheckEnabled()));
if (this.getHealthCheckCodes() != null) {
data.set("healthCheckCodes", om.valueToTree(this.getHealthCheckCodes()));
}
if (this.getHealthCheckConnectPort() != null) {
data.set("healthCheckConnectPort", om.valueToTree(this.getHealthCheckConnectPort()));
}
if (this.getHealthCheckHost() != null) {
data.set("healthCheckHost", om.valueToTree(this.getHealthCheckHost()));
}
if (this.getHealthCheckHttpVersion() != null) {
data.set("healthCheckHttpVersion", om.valueToTree(this.getHealthCheckHttpVersion()));
}
if (this.getHealthCheckInterval() != null) {
data.set("healthCheckInterval", om.valueToTree(this.getHealthCheckInterval()));
}
if (this.getHealthCheckMethod() != null) {
data.set("healthCheckMethod", om.valueToTree(this.getHealthCheckMethod()));
}
if (this.getHealthCheckPath() != null) {
data.set("healthCheckPath", om.valueToTree(this.getHealthCheckPath()));
}
if (this.getHealthCheckProtocol() != null) {
data.set("healthCheckProtocol", om.valueToTree(this.getHealthCheckProtocol()));
}
if (this.getHealthCheckTimeout() != null) {
data.set("healthCheckTimeout", om.valueToTree(this.getHealthCheckTimeout()));
}
if (this.getHealthyThreshold() != null) {
data.set("healthyThreshold", om.valueToTree(this.getHealthyThreshold()));
}
if (this.getUnhealthyThreshold() != null) {
data.set("unhealthyThreshold", om.valueToTree(this.getUnhealthyThreshold()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-alb.RosServerGroup.HealthCheckConfigProperty"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
HealthCheckConfigProperty.Jsii$Proxy that = (HealthCheckConfigProperty.Jsii$Proxy) o;
if (!healthCheckEnabled.equals(that.healthCheckEnabled)) return false;
if (this.healthCheckCodes != null ? !this.healthCheckCodes.equals(that.healthCheckCodes) : that.healthCheckCodes != null) return false;
if (this.healthCheckConnectPort != null ? !this.healthCheckConnectPort.equals(that.healthCheckConnectPort) : that.healthCheckConnectPort != null) return false;
if (this.healthCheckHost != null ? !this.healthCheckHost.equals(that.healthCheckHost) : that.healthCheckHost != null) return false;
if (this.healthCheckHttpVersion != null ? !this.healthCheckHttpVersion.equals(that.healthCheckHttpVersion) : that.healthCheckHttpVersion != null) return false;
if (this.healthCheckInterval != null ? !this.healthCheckInterval.equals(that.healthCheckInterval) : that.healthCheckInterval != null) return false;
if (this.healthCheckMethod != null ? !this.healthCheckMethod.equals(that.healthCheckMethod) : that.healthCheckMethod != null) return false;
if (this.healthCheckPath != null ? !this.healthCheckPath.equals(that.healthCheckPath) : that.healthCheckPath != null) return false;
if (this.healthCheckProtocol != null ? !this.healthCheckProtocol.equals(that.healthCheckProtocol) : that.healthCheckProtocol != null) return false;
if (this.healthCheckTimeout != null ? !this.healthCheckTimeout.equals(that.healthCheckTimeout) : that.healthCheckTimeout != null) return false;
if (this.healthyThreshold != null ? !this.healthyThreshold.equals(that.healthyThreshold) : that.healthyThreshold != null) return false;
return this.unhealthyThreshold != null ? this.unhealthyThreshold.equals(that.unhealthyThreshold) : that.unhealthyThreshold == null;
}
@Override
public final int hashCode() {
int result = this.healthCheckEnabled.hashCode();
result = 31 * result + (this.healthCheckCodes != null ? this.healthCheckCodes.hashCode() : 0);
result = 31 * result + (this.healthCheckConnectPort != null ? this.healthCheckConnectPort.hashCode() : 0);
result = 31 * result + (this.healthCheckHost != null ? this.healthCheckHost.hashCode() : 0);
result = 31 * result + (this.healthCheckHttpVersion != null ? this.healthCheckHttpVersion.hashCode() : 0);
result = 31 * result + (this.healthCheckInterval != null ? this.healthCheckInterval.hashCode() : 0);
result = 31 * result + (this.healthCheckMethod != null ? this.healthCheckMethod.hashCode() : 0);
result = 31 * result + (this.healthCheckPath != null ? this.healthCheckPath.hashCode() : 0);
result = 31 * result + (this.healthCheckProtocol != null ? this.healthCheckProtocol.hashCode() : 0);
result = 31 * result + (this.healthCheckTimeout != null ? this.healthCheckTimeout.hashCode() : 0);
result = 31 * result + (this.healthyThreshold != null ? this.healthyThreshold.hashCode() : 0);
result = 31 * result + (this.unhealthyThreshold != null ? this.unhealthyThreshold.hashCode() : 0);
return result;
}
}
}
/**
*/
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.alb.$Module.class, fqn = "@alicloud/ros-cdk-alb.RosServerGroup.SlowStartConfigProperty")
@software.amazon.jsii.Jsii.Proxy(SlowStartConfigProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface SlowStartConfigProperty extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getSlowStartDuration();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getSlowStartEnabled();
/**
* @return a {@link Builder} of {@link SlowStartConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link SlowStartConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object slowStartDuration;
java.lang.Object slowStartEnabled;
/**
* Sets the value of {@link SlowStartConfigProperty#getSlowStartDuration}
* @param slowStartDuration the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder slowStartDuration(java.lang.Number slowStartDuration) {
this.slowStartDuration = slowStartDuration;
return this;
}
/**
* Sets the value of {@link SlowStartConfigProperty#getSlowStartDuration}
* @param slowStartDuration the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder slowStartDuration(com.aliyun.ros.cdk.core.IResolvable slowStartDuration) {
this.slowStartDuration = slowStartDuration;
return this;
}
/**
* Sets the value of {@link SlowStartConfigProperty#getSlowStartEnabled}
* @param slowStartEnabled the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder slowStartEnabled(java.lang.Boolean slowStartEnabled) {
this.slowStartEnabled = slowStartEnabled;
return this;
}
/**
* Sets the value of {@link SlowStartConfigProperty#getSlowStartEnabled}
* @param slowStartEnabled the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder slowStartEnabled(com.aliyun.ros.cdk.core.IResolvable slowStartEnabled) {
this.slowStartEnabled = slowStartEnabled;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link SlowStartConfigProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public SlowStartConfigProperty build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link SlowStartConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements SlowStartConfigProperty {
private final java.lang.Object slowStartDuration;
private final java.lang.Object slowStartEnabled;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.slowStartDuration = software.amazon.jsii.Kernel.get(this, "slowStartDuration", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.slowStartEnabled = software.amazon.jsii.Kernel.get(this, "slowStartEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.slowStartDuration = java.util.Objects.requireNonNull(builder.slowStartDuration, "slowStartDuration is required");
this.slowStartEnabled = java.util.Objects.requireNonNull(builder.slowStartEnabled, "slowStartEnabled is required");
}
@Override
public final java.lang.Object getSlowStartDuration() {
return this.slowStartDuration;
}
@Override
public final java.lang.Object getSlowStartEnabled() {
return this.slowStartEnabled;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("slowStartDuration", om.valueToTree(this.getSlowStartDuration()));
data.set("slowStartEnabled", om.valueToTree(this.getSlowStartEnabled()));
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-alb.RosServerGroup.SlowStartConfigProperty"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
SlowStartConfigProperty.Jsii$Proxy that = (SlowStartConfigProperty.Jsii$Proxy) o;
if (!slowStartDuration.equals(that.slowStartDuration)) return false;
return this.slowStartEnabled.equals(that.slowStartEnabled);
}
@Override
public final int hashCode() {
int result = this.slowStartDuration.hashCode();
result = 31 * result + (this.slowStartEnabled.hashCode());
return result;
}
}
}
/**
*/
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.alb.$Module.class, fqn = "@alicloud/ros-cdk-alb.RosServerGroup.StickySessionConfigProperty")
@software.amazon.jsii.Jsii.Proxy(StickySessionConfigProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface StickySessionConfigProperty extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getCookie() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getCookieTimeout() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getStickySessionEnabled() {
return null;
}
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getStickySessionType() {
return null;
}
/**
* @return a {@link Builder} of {@link StickySessionConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link StickySessionConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object cookie;
java.lang.Object cookieTimeout;
java.lang.Object stickySessionEnabled;
java.lang.Object stickySessionType;
/**
* Sets the value of {@link StickySessionConfigProperty#getCookie}
* @param cookie the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder cookie(java.lang.String cookie) {
this.cookie = cookie;
return this;
}
/**
* Sets the value of {@link StickySessionConfigProperty#getCookie}
* @param cookie the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder cookie(com.aliyun.ros.cdk.core.IResolvable cookie) {
this.cookie = cookie;
return this;
}
/**
* Sets the value of {@link StickySessionConfigProperty#getCookieTimeout}
* @param cookieTimeout the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder cookieTimeout(java.lang.Number cookieTimeout) {
this.cookieTimeout = cookieTimeout;
return this;
}
/**
* Sets the value of {@link StickySessionConfigProperty#getCookieTimeout}
* @param cookieTimeout the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder cookieTimeout(com.aliyun.ros.cdk.core.IResolvable cookieTimeout) {
this.cookieTimeout = cookieTimeout;
return this;
}
/**
* Sets the value of {@link StickySessionConfigProperty#getStickySessionEnabled}
* @param stickySessionEnabled the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder stickySessionEnabled(java.lang.Boolean stickySessionEnabled) {
this.stickySessionEnabled = stickySessionEnabled;
return this;
}
/**
* Sets the value of {@link StickySessionConfigProperty#getStickySessionEnabled}
* @param stickySessionEnabled the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder stickySessionEnabled(com.aliyun.ros.cdk.core.IResolvable stickySessionEnabled) {
this.stickySessionEnabled = stickySessionEnabled;
return this;
}
/**
* Sets the value of {@link StickySessionConfigProperty#getStickySessionType}
* @param stickySessionType the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder stickySessionType(java.lang.String stickySessionType) {
this.stickySessionType = stickySessionType;
return this;
}
/**
* Sets the value of {@link StickySessionConfigProperty#getStickySessionType}
* @param stickySessionType the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder stickySessionType(com.aliyun.ros.cdk.core.IResolvable stickySessionType) {
this.stickySessionType = stickySessionType;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link StickySessionConfigProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public StickySessionConfigProperty build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link StickySessionConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements StickySessionConfigProperty {
private final java.lang.Object cookie;
private final java.lang.Object cookieTimeout;
private final java.lang.Object stickySessionEnabled;
private final java.lang.Object stickySessionType;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.cookie = software.amazon.jsii.Kernel.get(this, "cookie", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.cookieTimeout = software.amazon.jsii.Kernel.get(this, "cookieTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.stickySessionEnabled = software.amazon.jsii.Kernel.get(this, "stickySessionEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.stickySessionType = software.amazon.jsii.Kernel.get(this, "stickySessionType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.cookie = builder.cookie;
this.cookieTimeout = builder.cookieTimeout;
this.stickySessionEnabled = builder.stickySessionEnabled;
this.stickySessionType = builder.stickySessionType;
}
@Override
public final java.lang.Object getCookie() {
return this.cookie;
}
@Override
public final java.lang.Object getCookieTimeout() {
return this.cookieTimeout;
}
@Override
public final java.lang.Object getStickySessionEnabled() {
return this.stickySessionEnabled;
}
@Override
public final java.lang.Object getStickySessionType() {
return this.stickySessionType;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
if (this.getCookie() != null) {
data.set("cookie", om.valueToTree(this.getCookie()));
}
if (this.getCookieTimeout() != null) {
data.set("cookieTimeout", om.valueToTree(this.getCookieTimeout()));
}
if (this.getStickySessionEnabled() != null) {
data.set("stickySessionEnabled", om.valueToTree(this.getStickySessionEnabled()));
}
if (this.getStickySessionType() != null) {
data.set("stickySessionType", om.valueToTree(this.getStickySessionType()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-alb.RosServerGroup.StickySessionConfigProperty"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
StickySessionConfigProperty.Jsii$Proxy that = (StickySessionConfigProperty.Jsii$Proxy) o;
if (this.cookie != null ? !this.cookie.equals(that.cookie) : that.cookie != null) return false;
if (this.cookieTimeout != null ? !this.cookieTimeout.equals(that.cookieTimeout) : that.cookieTimeout != null) return false;
if (this.stickySessionEnabled != null ? !this.stickySessionEnabled.equals(that.stickySessionEnabled) : that.stickySessionEnabled != null) return false;
return this.stickySessionType != null ? this.stickySessionType.equals(that.stickySessionType) : that.stickySessionType == null;
}
@Override
public final int hashCode() {
int result = this.cookie != null ? this.cookie.hashCode() : 0;
result = 31 * result + (this.cookieTimeout != null ? this.cookieTimeout.hashCode() : 0);
result = 31 * result + (this.stickySessionEnabled != null ? this.stickySessionEnabled.hashCode() : 0);
result = 31 * result + (this.stickySessionType != null ? this.stickySessionType.hashCode() : 0);
return result;
}
}
}
/**
*/
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.alb.$Module.class, fqn = "@alicloud/ros-cdk-alb.RosServerGroup.TagsProperty")
@software.amazon.jsii.Jsii.Proxy(TagsProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface TagsProperty extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getKey();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
default @org.jetbrains.annotations.Nullable java.lang.Object getValue() {
return null;
}
/**
* @return a {@link Builder} of {@link TagsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link TagsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object key;
java.lang.Object value;
/**
* Sets the value of {@link TagsProperty#getKey}
* @param key the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder key(java.lang.String key) {
this.key = key;
return this;
}
/**
* Sets the value of {@link TagsProperty#getKey}
* @param key the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder key(com.aliyun.ros.cdk.core.IResolvable key) {
this.key = key;
return this;
}
/**
* Sets the value of {@link TagsProperty#getValue}
* @param value the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder value(java.lang.String value) {
this.value = value;
return this;
}
/**
* Sets the value of {@link TagsProperty#getValue}
* @param value the value to be set.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder value(com.aliyun.ros.cdk.core.IResolvable value) {
this.value = value;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link TagsProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public TagsProperty build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link TagsProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TagsProperty {
private final java.lang.Object key;
private final java.lang.Object value;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.key = software.amazon.jsii.Kernel.get(this, "key", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.value = software.amazon.jsii.Kernel.get(this, "value", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.key = java.util.Objects.requireNonNull(builder.key, "key is required");
this.value = builder.value;
}
@Override
public final java.lang.Object getKey() {
return this.key;
}
@Override
public final java.lang.Object getValue() {
return this.value;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("key", om.valueToTree(this.getKey()));
if (this.getValue() != null) {
data.set("value", om.valueToTree(this.getValue()));
}
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-alb.RosServerGroup.TagsProperty"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
TagsProperty.Jsii$Proxy that = (TagsProperty.Jsii$Proxy) o;
if (!key.equals(that.key)) return false;
return this.value != null ? this.value.equals(that.value) : that.value == null;
}
@Override
public final int hashCode() {
int result = this.key.hashCode();
result = 31 * result + (this.value != null ? this.value.hashCode() : 0);
return result;
}
}
}
/**
*/
@software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.alb.$Module.class, fqn = "@alicloud/ros-cdk-alb.RosServerGroup.UchConfigProperty")
@software.amazon.jsii.Jsii.Proxy(UchConfigProperty.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static interface UchConfigProperty extends software.amazon.jsii.JsiiSerializable {
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getType();
/**
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@org.jetbrains.annotations.NotNull java.lang.Object getValue();
/**
* @return a {@link Builder} of {@link UchConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
static Builder builder() {
return new Builder();
}
/**
* A builder for {@link UchConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public static final class Builder implements software.amazon.jsii.Builder {
java.lang.Object type;
java.lang.Object value;
/**
* Sets the value of {@link UchConfigProperty#getType}
* @param type the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder type(java.lang.String type) {
this.type = type;
return this;
}
/**
* Sets the value of {@link UchConfigProperty#getType}
* @param type the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder type(com.aliyun.ros.cdk.core.IResolvable type) {
this.type = type;
return this;
}
/**
* Sets the value of {@link UchConfigProperty#getValue}
* @param value the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder value(java.lang.String value) {
this.value = value;
return this;
}
/**
* Sets the value of {@link UchConfigProperty#getValue}
* @param value the value to be set. This parameter is required.
* @return {@code this}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public Builder value(com.aliyun.ros.cdk.core.IResolvable value) {
this.value = value;
return this;
}
/**
* Builds the configured instance.
* @return a new instance of {@link UchConfigProperty}
* @throws NullPointerException if any required attribute was not provided
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@Override
public UchConfigProperty build() {
return new Jsii$Proxy(this);
}
}
/**
* An implementation for {@link UchConfigProperty}
*/
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
@software.amazon.jsii.Internal
final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements UchConfigProperty {
private final java.lang.Object type;
private final java.lang.Object value;
/**
* Constructor that initializes the object based on values retrieved from the JsiiObject.
* @param objRef Reference to the JSII managed object.
*/
protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) {
super(objRef);
this.type = software.amazon.jsii.Kernel.get(this, "type", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
this.value = software.amazon.jsii.Kernel.get(this, "value", software.amazon.jsii.NativeType.forClass(java.lang.Object.class));
}
/**
* Constructor that initializes the object based on literal property values passed by the {@link Builder}.
*/
protected Jsii$Proxy(final Builder builder) {
super(software.amazon.jsii.JsiiObject.InitializationMode.JSII);
this.type = java.util.Objects.requireNonNull(builder.type, "type is required");
this.value = java.util.Objects.requireNonNull(builder.value, "value is required");
}
@Override
public final java.lang.Object getType() {
return this.type;
}
@Override
public final java.lang.Object getValue() {
return this.value;
}
@Override
@software.amazon.jsii.Internal
public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() {
final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE;
final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
data.set("type", om.valueToTree(this.getType()));
data.set("value", om.valueToTree(this.getValue()));
final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-alb.RosServerGroup.UchConfigProperty"));
struct.set("data", data);
final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode();
obj.set("$jsii.struct", struct);
return obj;
}
@Override
public final boolean equals(final Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
UchConfigProperty.Jsii$Proxy that = (UchConfigProperty.Jsii$Proxy) o;
if (!type.equals(that.type)) return false;
return this.value.equals(that.value);
}
@Override
public final int hashCode() {
int result = this.type.hashCode();
result = 31 * result + (this.value.hashCode());
return result;
}
}
}
/**
* A fluent builder for {@link com.aliyun.ros.cdk.alb.RosServerGroup}.
*/
public static final class Builder implements software.amazon.jsii.Builder {
/**
* @return a new instance of {@link Builder}.
* @param scope - scope in which this resource is defined.
This parameter is required.
* @param id - scoped id of the resource.
This parameter is required.
* @param enableResourcePropertyConstraint This parameter is required.
*/
public static Builder create(final com.aliyun.ros.cdk.core.Construct scope, final java.lang.String id, final java.lang.Boolean enableResourcePropertyConstraint) {
return new Builder(scope, id, enableResourcePropertyConstraint);
}
private final com.aliyun.ros.cdk.core.Construct scope;
private final java.lang.String id;
private final java.lang.Boolean enableResourcePropertyConstraint;
private final com.aliyun.ros.cdk.alb.RosServerGroupProps.Builder props;
private Builder(final com.aliyun.ros.cdk.core.Construct scope, final java.lang.String id, final java.lang.Boolean enableResourcePropertyConstraint) {
this.scope = scope;
this.id = id;
this.enableResourcePropertyConstraint = enableResourcePropertyConstraint;
this.props = new com.aliyun.ros.cdk.alb.RosServerGroupProps.Builder();
}
/**
* @return {@code this}
* @param healthCheckConfig This parameter is required.
*/
public Builder healthCheckConfig(final com.aliyun.ros.cdk.core.IResolvable healthCheckConfig) {
this.props.healthCheckConfig(healthCheckConfig);
return this;
}
/**
* @return {@code this}
* @param healthCheckConfig This parameter is required.
*/
public Builder healthCheckConfig(final com.aliyun.ros.cdk.alb.RosServerGroup.HealthCheckConfigProperty healthCheckConfig) {
this.props.healthCheckConfig(healthCheckConfig);
return this;
}
/**
* @return {@code this}
* @param serverGroupName This parameter is required.
*/
public Builder serverGroupName(final java.lang.String serverGroupName) {
this.props.serverGroupName(serverGroupName);
return this;
}
/**
* @return {@code this}
* @param serverGroupName This parameter is required.
*/
public Builder serverGroupName(final com.aliyun.ros.cdk.core.IResolvable serverGroupName) {
this.props.serverGroupName(serverGroupName);
return this;
}
/**
* @return {@code this}
* @param vpcId This parameter is required.
*/
public Builder vpcId(final java.lang.String vpcId) {
this.props.vpcId(vpcId);
return this;
}
/**
* @return {@code this}
* @param vpcId This parameter is required.
*/
public Builder vpcId(final com.aliyun.ros.cdk.core.IResolvable vpcId) {
this.props.vpcId(vpcId);
return this;
}
/**
* @return {@code this}
* @param connectionDrainConfig This parameter is required.
*/
public Builder connectionDrainConfig(final com.aliyun.ros.cdk.core.IResolvable connectionDrainConfig) {
this.props.connectionDrainConfig(connectionDrainConfig);
return this;
}
/**
* @return {@code this}
* @param connectionDrainConfig This parameter is required.
*/
public Builder connectionDrainConfig(final com.aliyun.ros.cdk.alb.RosServerGroup.ConnectionDrainConfigProperty connectionDrainConfig) {
this.props.connectionDrainConfig(connectionDrainConfig);
return this;
}
/**
* @return {@code this}
* @param protocol This parameter is required.
*/
public Builder protocol(final java.lang.String protocol) {
this.props.protocol(protocol);
return this;
}
/**
* @return {@code this}
* @param protocol This parameter is required.
*/
public Builder protocol(final com.aliyun.ros.cdk.core.IResolvable protocol) {
this.props.protocol(protocol);
return this;
}
/**
* @return {@code this}
* @param resourceGroupId This parameter is required.
*/
public Builder resourceGroupId(final java.lang.String resourceGroupId) {
this.props.resourceGroupId(resourceGroupId);
return this;
}
/**
* @return {@code this}
* @param resourceGroupId This parameter is required.
*/
public Builder resourceGroupId(final com.aliyun.ros.cdk.core.IResolvable resourceGroupId) {
this.props.resourceGroupId(resourceGroupId);
return this;
}
/**
* @return {@code this}
* @param scheduler This parameter is required.
*/
public Builder scheduler(final java.lang.String scheduler) {
this.props.scheduler(scheduler);
return this;
}
/**
* @return {@code this}
* @param scheduler This parameter is required.
*/
public Builder scheduler(final com.aliyun.ros.cdk.core.IResolvable scheduler) {
this.props.scheduler(scheduler);
return this;
}
/**
* @return {@code this}
* @param serverGroupType This parameter is required.
*/
public Builder serverGroupType(final java.lang.String serverGroupType) {
this.props.serverGroupType(serverGroupType);
return this;
}
/**
* @return {@code this}
* @param serverGroupType This parameter is required.
*/
public Builder serverGroupType(final com.aliyun.ros.cdk.core.IResolvable serverGroupType) {
this.props.serverGroupType(serverGroupType);
return this;
}
/**
* @return {@code this}
* @param serviceName This parameter is required.
*/
public Builder serviceName(final java.lang.String serviceName) {
this.props.serviceName(serviceName);
return this;
}
/**
* @return {@code this}
* @param serviceName This parameter is required.
*/
public Builder serviceName(final com.aliyun.ros.cdk.core.IResolvable serviceName) {
this.props.serviceName(serviceName);
return this;
}
/**
* @return {@code this}
* @param slowStartConfig This parameter is required.
*/
public Builder slowStartConfig(final com.aliyun.ros.cdk.core.IResolvable slowStartConfig) {
this.props.slowStartConfig(slowStartConfig);
return this;
}
/**
* @return {@code this}
* @param slowStartConfig This parameter is required.
*/
public Builder slowStartConfig(final com.aliyun.ros.cdk.alb.RosServerGroup.SlowStartConfigProperty slowStartConfig) {
this.props.slowStartConfig(slowStartConfig);
return this;
}
/**
* @return {@code this}
* @param stickySessionConfig This parameter is required.
*/
public Builder stickySessionConfig(final com.aliyun.ros.cdk.core.IResolvable stickySessionConfig) {
this.props.stickySessionConfig(stickySessionConfig);
return this;
}
/**
* @return {@code this}
* @param stickySessionConfig This parameter is required.
*/
public Builder stickySessionConfig(final com.aliyun.ros.cdk.alb.RosServerGroup.StickySessionConfigProperty stickySessionConfig) {
this.props.stickySessionConfig(stickySessionConfig);
return this;
}
/**
* @return {@code this}
* @param tags This parameter is required.
*/
public Builder tags(final java.util.List extends com.aliyun.ros.cdk.alb.RosServerGroup.TagsProperty> tags) {
this.props.tags(tags);
return this;
}
/**
* @return {@code this}
* @param uchConfig This parameter is required.
*/
public Builder uchConfig(final com.aliyun.ros.cdk.core.IResolvable uchConfig) {
this.props.uchConfig(uchConfig);
return this;
}
/**
* @return {@code this}
* @param uchConfig This parameter is required.
*/
public Builder uchConfig(final com.aliyun.ros.cdk.alb.RosServerGroup.UchConfigProperty uchConfig) {
this.props.uchConfig(uchConfig);
return this;
}
/**
* @return {@code this}
* @param upstreamKeepaliveEnabled This parameter is required.
*/
public Builder upstreamKeepaliveEnabled(final java.lang.Boolean upstreamKeepaliveEnabled) {
this.props.upstreamKeepaliveEnabled(upstreamKeepaliveEnabled);
return this;
}
/**
* @return {@code this}
* @param upstreamKeepaliveEnabled This parameter is required.
*/
public Builder upstreamKeepaliveEnabled(final com.aliyun.ros.cdk.core.IResolvable upstreamKeepaliveEnabled) {
this.props.upstreamKeepaliveEnabled(upstreamKeepaliveEnabled);
return this;
}
/**
* @return a newly built instance of {@link com.aliyun.ros.cdk.alb.RosServerGroup}.
*/
@Override
public com.aliyun.ros.cdk.alb.RosServerGroup build() {
return new com.aliyun.ros.cdk.alb.RosServerGroup(
this.scope,
this.id,
this.props.build(),
this.enableResourcePropertyConstraint
);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy