All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.aliyun.ros.cdk.redis.InstanceProps Maven / Gradle / Ivy

package com.aliyun.ros.cdk.redis;

/**
 * Properties for defining a Instance.
 * 

* See https://www.alibabacloud.com/help/ros/developer-reference/aliyun-redis-instance */ @javax.annotation.Generated(value = "jsii-pacmak/1.85.0 (build 08ee592)", date = "2024-12-13T06:45:11.219Z") @software.amazon.jsii.Jsii(module = com.aliyun.ros.cdk.redis.$Module.class, fqn = "@alicloud/ros-cdk-redis.InstanceProps") @software.amazon.jsii.Jsii.Proxy(InstanceProps.Jsii$Proxy.class) public interface InstanceProps extends software.amazon.jsii.JsiiSerializable { /** * Property autoRenewDuration: The auto-renewal period. *

* Valid values: 1 to 12. * When the instance is about to expire, the instance is automatically renewed * based on the number of months specified by this parameter. * Note This parameter is valid only when ChargeType is set to PrePaid. */ default @org.jetbrains.annotations.Nullable java.lang.Object getAutoRenewDuration() { return null; } /** * Property backupPolicy: Backup policy. */ default @org.jetbrains.annotations.Nullable java.lang.Object getBackupPolicy() { return null; } /** * Property chargeType: The billing method of the ApsaraDB for Redis instance. */ default @org.jetbrains.annotations.Nullable java.lang.Object getChargeType() { return null; } /** * Property connections: Connection address. */ default @org.jetbrains.annotations.Nullable java.lang.Object getConnections() { return null; } /** * Property deletionForce: Whether destroy instance when it is in recycle. *

* Default is false */ default @org.jetbrains.annotations.Nullable java.lang.Object getDeletionForce() { return null; } /** * Property deletionProtection: Specifies whether to enable the release protection feature for the instance. *

* Default is false. */ default @org.jetbrains.annotations.Nullable java.lang.Object getDeletionProtection() { return null; } /** * Property engineVersion: Engine version. *

* Supported values: 2.8, 4.0, 5.0, 6.0 and 7.0 */ default @org.jetbrains.annotations.Nullable java.lang.Object getEngineVersion() { return null; } /** * Property evictionPolicy: The eviction policy of cache data storage. */ default @org.jetbrains.annotations.Nullable java.lang.Object getEvictionPolicy() { return null; } /** * Property instanceClass: Redis instance type. *

* Refer the Redis instance type reference, such as 'redis.master.small.default', 'redis.master.4xlarge.default', 'redis.sharding.mid.default' etc */ default @org.jetbrains.annotations.Nullable java.lang.Object getInstanceClass() { return null; } /** * Property instanceMaintainTime: Instance maintain time. */ default @org.jetbrains.annotations.Nullable java.lang.Object getInstanceMaintainTime() { return null; } /** * Property instanceName: Display name of the instance, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'. */ default @org.jetbrains.annotations.Nullable java.lang.Object getInstanceName() { return null; } /** * Property nodeType: The type of node. *

* Valid value: *

*

    *
  • STAND_ALONE
  • *
  • MASTER_SLAVE
  • *
  • double
  • *
  • single
  • *
*/ default @org.jetbrains.annotations.Nullable java.lang.Object getNodeType() { return null; } /** * Property password: The password of redis instance.length 8 to 30 characters, need to contain both uppercase and lowercase letters and numbers. */ default @org.jetbrains.annotations.Nullable java.lang.Object getPassword() { return null; } /** * Property period: The period of order, when choose Prepaid required.optional value 1-9, 12, 24, 36, 60 Unit in month. */ default @org.jetbrains.annotations.Nullable java.lang.Object getPeriod() { return null; } /** * Property periodUnit: The unit of the subscription duration. *

* Valid values: * Month * Year * Default value: Month. */ default @org.jetbrains.annotations.Nullable java.lang.Object getPeriodUnit() { return null; } /** * Property productType: Product type. *

* Valid values:Local: Community Edition(Local) or Enhanced Edition(Local)Tair_rdb: Performance Enhanced(Cloud Disk)Tair_scm: Persistent Memory(Cloud Disk)Tair_essd: Capacity Storage(Cloud Disk)OnECS: Community Edition(Cloud Disk) */ default @org.jetbrains.annotations.Nullable java.lang.Object getProductType() { return null; } /** * Property resourceGroupId: Resource group id. */ default @org.jetbrains.annotations.Nullable java.lang.Object getResourceGroupId() { return null; } /** * Property secondaryZoneId: The secondary zone ID of the instance. */ default @org.jetbrains.annotations.Nullable java.lang.Object getSecondaryZoneId() { return null; } /** * Property securityGroupId: The IDs of security groups. *

* Separate multiple security group IDs with commas (,) and up to 10 can be set. */ default @org.jetbrains.annotations.Nullable java.lang.Object getSecurityGroupId() { return null; } /** * Property shardCount: The number of data nodes in the instance. *

* Default value: 1. Valid values: * 1: You can create an instance in the standard architecture that contains only a single data node. * For more information about the standard architecture, see Cluster master-replica instances. * 2 to 32: You can create an instance in the cluster architecturethat contains the specified number of data nodes. * For more information about the cluster architecture, see Cluster master-replica instances. */ default @org.jetbrains.annotations.Nullable java.lang.Object getShardCount() { return null; } /** * Property sslEnabled: Modifies the SSL status. *

* Valid values: * Disable: disables SSL encryption. * Enable: enables SSL encryption. * Update: updates the SSL certificate. */ default @org.jetbrains.annotations.Nullable java.lang.Object getSslEnabled() { return null; } /** * Property tags: Tags to attach to redis. *

* Max support 20 tags to add during create redis. Each tag with two properties Key and Value, and Key is required. */ default @org.jetbrains.annotations.Nullable java.util.List getTags() { return null; } /** * Property tairConfig: Tair config. *

* This parameter is available only if the InstanceClass parameter is start with tair. */ default @org.jetbrains.annotations.Nullable java.lang.Object getTairConfig() { return null; } /** * Property vpcId: The VPC id to create ecs instance. */ default @org.jetbrains.annotations.Nullable java.lang.Object getVpcId() { return null; } /** * Property vpcPasswordFree: Specifies whether to enable password free for access within the VPC. *

* If set to: *

*

    *
  • true: enables password free.
  • *
  • false: disables password free.
  • *
*/ default @org.jetbrains.annotations.Nullable java.lang.Object getVpcPasswordFree() { return null; } /** * Property vSwitchId: The vSwitch Id to create ecs instance. */ default @org.jetbrains.annotations.Nullable java.lang.Object getVSwitchId() { return null; } /** * Property zoneId: The zone id of input region. */ default @org.jetbrains.annotations.Nullable java.lang.Object getZoneId() { return null; } /** * @return a {@link Builder} of {@link InstanceProps} */ static Builder builder() { return new Builder(); } /** * A builder for {@link InstanceProps} */ public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object autoRenewDuration; java.lang.Object backupPolicy; java.lang.Object chargeType; java.lang.Object connections; java.lang.Object deletionForce; java.lang.Object deletionProtection; java.lang.Object engineVersion; java.lang.Object evictionPolicy; java.lang.Object instanceClass; java.lang.Object instanceMaintainTime; java.lang.Object instanceName; java.lang.Object nodeType; java.lang.Object password; java.lang.Object period; java.lang.Object periodUnit; java.lang.Object productType; java.lang.Object resourceGroupId; java.lang.Object secondaryZoneId; java.lang.Object securityGroupId; java.lang.Object shardCount; java.lang.Object sslEnabled; java.util.List tags; java.lang.Object tairConfig; java.lang.Object vpcId; java.lang.Object vpcPasswordFree; java.lang.Object vSwitchId; java.lang.Object zoneId; /** * Sets the value of {@link InstanceProps#getAutoRenewDuration} * @param autoRenewDuration Property autoRenewDuration: The auto-renewal period. * Valid values: 1 to 12. * When the instance is about to expire, the instance is automatically renewed * based on the number of months specified by this parameter. * Note This parameter is valid only when ChargeType is set to PrePaid. * @return {@code this} */ public Builder autoRenewDuration(java.lang.Number autoRenewDuration) { this.autoRenewDuration = autoRenewDuration; return this; } /** * Sets the value of {@link InstanceProps#getAutoRenewDuration} * @param autoRenewDuration Property autoRenewDuration: The auto-renewal period. * Valid values: 1 to 12. * When the instance is about to expire, the instance is automatically renewed * based on the number of months specified by this parameter. * Note This parameter is valid only when ChargeType is set to PrePaid. * @return {@code this} */ public Builder autoRenewDuration(com.aliyun.ros.cdk.core.IResolvable autoRenewDuration) { this.autoRenewDuration = autoRenewDuration; return this; } /** * Sets the value of {@link InstanceProps#getBackupPolicy} * @param backupPolicy Property backupPolicy: Backup policy. * @return {@code this} */ public Builder backupPolicy(com.aliyun.ros.cdk.core.IResolvable backupPolicy) { this.backupPolicy = backupPolicy; return this; } /** * Sets the value of {@link InstanceProps#getBackupPolicy} * @param backupPolicy Property backupPolicy: Backup policy. * @return {@code this} */ public Builder backupPolicy(com.aliyun.ros.cdk.redis.RosInstance.BackupPolicyProperty backupPolicy) { this.backupPolicy = backupPolicy; return this; } /** * Sets the value of {@link InstanceProps#getChargeType} * @param chargeType Property chargeType: The billing method of the ApsaraDB for Redis instance. * @return {@code this} */ public Builder chargeType(java.lang.String chargeType) { this.chargeType = chargeType; return this; } /** * Sets the value of {@link InstanceProps#getChargeType} * @param chargeType Property chargeType: The billing method of the ApsaraDB for Redis instance. * @return {@code this} */ public Builder chargeType(com.aliyun.ros.cdk.core.IResolvable chargeType) { this.chargeType = chargeType; return this; } /** * Sets the value of {@link InstanceProps#getConnections} * @param connections Property connections: Connection address. * @return {@code this} */ public Builder connections(com.aliyun.ros.cdk.core.IResolvable connections) { this.connections = connections; return this; } /** * Sets the value of {@link InstanceProps#getConnections} * @param connections Property connections: Connection address. * @return {@code this} */ public Builder connections(com.aliyun.ros.cdk.redis.RosInstance.ConnectionsProperty connections) { this.connections = connections; return this; } /** * Sets the value of {@link InstanceProps#getDeletionForce} * @param deletionForce Property deletionForce: Whether destroy instance when it is in recycle. * Default is false * @return {@code this} */ public Builder deletionForce(java.lang.Boolean deletionForce) { this.deletionForce = deletionForce; return this; } /** * Sets the value of {@link InstanceProps#getDeletionForce} * @param deletionForce Property deletionForce: Whether destroy instance when it is in recycle. * Default is false * @return {@code this} */ public Builder deletionForce(com.aliyun.ros.cdk.core.IResolvable deletionForce) { this.deletionForce = deletionForce; return this; } /** * Sets the value of {@link InstanceProps#getDeletionProtection} * @param deletionProtection Property deletionProtection: Specifies whether to enable the release protection feature for the instance. * Default is false. * @return {@code this} */ public Builder deletionProtection(java.lang.Boolean deletionProtection) { this.deletionProtection = deletionProtection; return this; } /** * Sets the value of {@link InstanceProps#getDeletionProtection} * @param deletionProtection Property deletionProtection: Specifies whether to enable the release protection feature for the instance. * Default is false. * @return {@code this} */ public Builder deletionProtection(com.aliyun.ros.cdk.core.IResolvable deletionProtection) { this.deletionProtection = deletionProtection; return this; } /** * Sets the value of {@link InstanceProps#getEngineVersion} * @param engineVersion Property engineVersion: Engine version. * Supported values: 2.8, 4.0, 5.0, 6.0 and 7.0 * @return {@code this} */ public Builder engineVersion(java.lang.String engineVersion) { this.engineVersion = engineVersion; return this; } /** * Sets the value of {@link InstanceProps#getEngineVersion} * @param engineVersion Property engineVersion: Engine version. * Supported values: 2.8, 4.0, 5.0, 6.0 and 7.0 * @return {@code this} */ public Builder engineVersion(com.aliyun.ros.cdk.core.IResolvable engineVersion) { this.engineVersion = engineVersion; return this; } /** * Sets the value of {@link InstanceProps#getEvictionPolicy} * @param evictionPolicy Property evictionPolicy: The eviction policy of cache data storage. * @return {@code this} */ public Builder evictionPolicy(java.lang.String evictionPolicy) { this.evictionPolicy = evictionPolicy; return this; } /** * Sets the value of {@link InstanceProps#getEvictionPolicy} * @param evictionPolicy Property evictionPolicy: The eviction policy of cache data storage. * @return {@code this} */ public Builder evictionPolicy(com.aliyun.ros.cdk.core.IResolvable evictionPolicy) { this.evictionPolicy = evictionPolicy; return this; } /** * Sets the value of {@link InstanceProps#getInstanceClass} * @param instanceClass Property instanceClass: Redis instance type. * Refer the Redis instance type reference, such as 'redis.master.small.default', 'redis.master.4xlarge.default', 'redis.sharding.mid.default' etc * @return {@code this} */ public Builder instanceClass(java.lang.String instanceClass) { this.instanceClass = instanceClass; return this; } /** * Sets the value of {@link InstanceProps#getInstanceClass} * @param instanceClass Property instanceClass: Redis instance type. * Refer the Redis instance type reference, such as 'redis.master.small.default', 'redis.master.4xlarge.default', 'redis.sharding.mid.default' etc * @return {@code this} */ public Builder instanceClass(com.aliyun.ros.cdk.core.IResolvable instanceClass) { this.instanceClass = instanceClass; return this; } /** * Sets the value of {@link InstanceProps#getInstanceMaintainTime} * @param instanceMaintainTime Property instanceMaintainTime: Instance maintain time. * @return {@code this} */ public Builder instanceMaintainTime(com.aliyun.ros.cdk.core.IResolvable instanceMaintainTime) { this.instanceMaintainTime = instanceMaintainTime; return this; } /** * Sets the value of {@link InstanceProps#getInstanceMaintainTime} * @param instanceMaintainTime Property instanceMaintainTime: Instance maintain time. * @return {@code this} */ public Builder instanceMaintainTime(com.aliyun.ros.cdk.redis.RosInstance.InstanceMaintainTimeProperty instanceMaintainTime) { this.instanceMaintainTime = instanceMaintainTime; return this; } /** * Sets the value of {@link InstanceProps#getInstanceName} * @param instanceName Property instanceName: Display name of the instance, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'. * @return {@code this} */ public Builder instanceName(java.lang.String instanceName) { this.instanceName = instanceName; return this; } /** * Sets the value of {@link InstanceProps#getInstanceName} * @param instanceName Property instanceName: Display name of the instance, [2, 128] English or Chinese characters, must start with a letter or Chinese in size, can contain numbers, '_' or '.', '-'. * @return {@code this} */ public Builder instanceName(com.aliyun.ros.cdk.core.IResolvable instanceName) { this.instanceName = instanceName; return this; } /** * Sets the value of {@link InstanceProps#getNodeType} * @param nodeType Property nodeType: The type of node. * Valid value: *

*

    *
  • STAND_ALONE
  • *
  • MASTER_SLAVE
  • *
  • double
  • *
  • single
  • *
* @return {@code this} */ public Builder nodeType(java.lang.String nodeType) { this.nodeType = nodeType; return this; } /** * Sets the value of {@link InstanceProps#getNodeType} * @param nodeType Property nodeType: The type of node. * Valid value: *

*

    *
  • STAND_ALONE
  • *
  • MASTER_SLAVE
  • *
  • double
  • *
  • single
  • *
* @return {@code this} */ public Builder nodeType(com.aliyun.ros.cdk.core.IResolvable nodeType) { this.nodeType = nodeType; return this; } /** * Sets the value of {@link InstanceProps#getPassword} * @param password Property password: The password of redis instance.length 8 to 30 characters, need to contain both uppercase and lowercase letters and numbers. * @return {@code this} */ public Builder password(java.lang.String password) { this.password = password; return this; } /** * Sets the value of {@link InstanceProps#getPassword} * @param password Property password: The password of redis instance.length 8 to 30 characters, need to contain both uppercase and lowercase letters and numbers. * @return {@code this} */ public Builder password(com.aliyun.ros.cdk.core.IResolvable password) { this.password = password; return this; } /** * Sets the value of {@link InstanceProps#getPeriod} * @param period Property period: The period of order, when choose Prepaid required.optional value 1-9, 12, 24, 36, 60 Unit in month. * @return {@code this} */ public Builder period(java.lang.Number period) { this.period = period; return this; } /** * Sets the value of {@link InstanceProps#getPeriod} * @param period Property period: The period of order, when choose Prepaid required.optional value 1-9, 12, 24, 36, 60 Unit in month. * @return {@code this} */ public Builder period(com.aliyun.ros.cdk.core.IResolvable period) { this.period = period; return this; } /** * Sets the value of {@link InstanceProps#getPeriodUnit} * @param periodUnit Property periodUnit: The unit of the subscription duration. * Valid values: * Month * Year * Default value: Month. * @return {@code this} */ public Builder periodUnit(java.lang.String periodUnit) { this.periodUnit = periodUnit; return this; } /** * Sets the value of {@link InstanceProps#getPeriodUnit} * @param periodUnit Property periodUnit: The unit of the subscription duration. * Valid values: * Month * Year * Default value: Month. * @return {@code this} */ public Builder periodUnit(com.aliyun.ros.cdk.core.IResolvable periodUnit) { this.periodUnit = periodUnit; return this; } /** * Sets the value of {@link InstanceProps#getProductType} * @param productType Property productType: Product type. * Valid values:Local: Community Edition(Local) or Enhanced Edition(Local)Tair_rdb: Performance Enhanced(Cloud Disk)Tair_scm: Persistent Memory(Cloud Disk)Tair_essd: Capacity Storage(Cloud Disk)OnECS: Community Edition(Cloud Disk) * @return {@code this} */ public Builder productType(java.lang.String productType) { this.productType = productType; return this; } /** * Sets the value of {@link InstanceProps#getProductType} * @param productType Property productType: Product type. * Valid values:Local: Community Edition(Local) or Enhanced Edition(Local)Tair_rdb: Performance Enhanced(Cloud Disk)Tair_scm: Persistent Memory(Cloud Disk)Tair_essd: Capacity Storage(Cloud Disk)OnECS: Community Edition(Cloud Disk) * @return {@code this} */ public Builder productType(com.aliyun.ros.cdk.core.IResolvable productType) { this.productType = productType; return this; } /** * Sets the value of {@link InstanceProps#getResourceGroupId} * @param resourceGroupId Property resourceGroupId: Resource group id. * @return {@code this} */ public Builder resourceGroupId(java.lang.String resourceGroupId) { this.resourceGroupId = resourceGroupId; return this; } /** * Sets the value of {@link InstanceProps#getResourceGroupId} * @param resourceGroupId Property resourceGroupId: Resource group id. * @return {@code this} */ public Builder resourceGroupId(com.aliyun.ros.cdk.core.IResolvable resourceGroupId) { this.resourceGroupId = resourceGroupId; return this; } /** * Sets the value of {@link InstanceProps#getSecondaryZoneId} * @param secondaryZoneId Property secondaryZoneId: The secondary zone ID of the instance. * @return {@code this} */ public Builder secondaryZoneId(java.lang.String secondaryZoneId) { this.secondaryZoneId = secondaryZoneId; return this; } /** * Sets the value of {@link InstanceProps#getSecondaryZoneId} * @param secondaryZoneId Property secondaryZoneId: The secondary zone ID of the instance. * @return {@code this} */ public Builder secondaryZoneId(com.aliyun.ros.cdk.core.IResolvable secondaryZoneId) { this.secondaryZoneId = secondaryZoneId; return this; } /** * Sets the value of {@link InstanceProps#getSecurityGroupId} * @param securityGroupId Property securityGroupId: The IDs of security groups. * Separate multiple security group IDs with commas (,) and up to 10 can be set. * @return {@code this} */ public Builder securityGroupId(java.lang.String securityGroupId) { this.securityGroupId = securityGroupId; return this; } /** * Sets the value of {@link InstanceProps#getSecurityGroupId} * @param securityGroupId Property securityGroupId: The IDs of security groups. * Separate multiple security group IDs with commas (,) and up to 10 can be set. * @return {@code this} */ public Builder securityGroupId(com.aliyun.ros.cdk.core.IResolvable securityGroupId) { this.securityGroupId = securityGroupId; return this; } /** * Sets the value of {@link InstanceProps#getShardCount} * @param shardCount Property shardCount: The number of data nodes in the instance. * Default value: 1. Valid values: * 1: You can create an instance in the standard architecture that contains only a single data node. * For more information about the standard architecture, see Cluster master-replica instances. * 2 to 32: You can create an instance in the cluster architecturethat contains the specified number of data nodes. * For more information about the cluster architecture, see Cluster master-replica instances. * @return {@code this} */ public Builder shardCount(java.lang.Number shardCount) { this.shardCount = shardCount; return this; } /** * Sets the value of {@link InstanceProps#getShardCount} * @param shardCount Property shardCount: The number of data nodes in the instance. * Default value: 1. Valid values: * 1: You can create an instance in the standard architecture that contains only a single data node. * For more information about the standard architecture, see Cluster master-replica instances. * 2 to 32: You can create an instance in the cluster architecturethat contains the specified number of data nodes. * For more information about the cluster architecture, see Cluster master-replica instances. * @return {@code this} */ public Builder shardCount(com.aliyun.ros.cdk.core.IResolvable shardCount) { this.shardCount = shardCount; return this; } /** * Sets the value of {@link InstanceProps#getSslEnabled} * @param sslEnabled Property sslEnabled: Modifies the SSL status. * Valid values: * Disable: disables SSL encryption. * Enable: enables SSL encryption. * Update: updates the SSL certificate. * @return {@code this} */ public Builder sslEnabled(java.lang.String sslEnabled) { this.sslEnabled = sslEnabled; return this; } /** * Sets the value of {@link InstanceProps#getSslEnabled} * @param sslEnabled Property sslEnabled: Modifies the SSL status. * Valid values: * Disable: disables SSL encryption. * Enable: enables SSL encryption. * Update: updates the SSL certificate. * @return {@code this} */ public Builder sslEnabled(com.aliyun.ros.cdk.core.IResolvable sslEnabled) { this.sslEnabled = sslEnabled; return this; } /** * Sets the value of {@link InstanceProps#getTags} * @param tags Property tags: Tags to attach to redis. * Max support 20 tags to add during create redis. Each tag with two properties Key and Value, and Key is required. * @return {@code this} */ @SuppressWarnings("unchecked") public Builder tags(java.util.List tags) { this.tags = (java.util.List)tags; return this; } /** * Sets the value of {@link InstanceProps#getTairConfig} * @param tairConfig Property tairConfig: Tair config. * This parameter is available only if the InstanceClass parameter is start with tair. * @return {@code this} */ public Builder tairConfig(com.aliyun.ros.cdk.core.IResolvable tairConfig) { this.tairConfig = tairConfig; return this; } /** * Sets the value of {@link InstanceProps#getTairConfig} * @param tairConfig Property tairConfig: Tair config. * This parameter is available only if the InstanceClass parameter is start with tair. * @return {@code this} */ public Builder tairConfig(com.aliyun.ros.cdk.redis.RosInstance.TairConfigProperty tairConfig) { this.tairConfig = tairConfig; return this; } /** * Sets the value of {@link InstanceProps#getVpcId} * @param vpcId Property vpcId: The VPC id to create ecs instance. * @return {@code this} */ public Builder vpcId(java.lang.String vpcId) { this.vpcId = vpcId; return this; } /** * Sets the value of {@link InstanceProps#getVpcId} * @param vpcId Property vpcId: The VPC id to create ecs instance. * @return {@code this} */ public Builder vpcId(com.aliyun.ros.cdk.core.IResolvable vpcId) { this.vpcId = vpcId; return this; } /** * Sets the value of {@link InstanceProps#getVpcPasswordFree} * @param vpcPasswordFree Property vpcPasswordFree: Specifies whether to enable password free for access within the VPC. * If set to: *

*

    *
  • true: enables password free.
  • *
  • false: disables password free.
  • *
* @return {@code this} */ public Builder vpcPasswordFree(java.lang.Boolean vpcPasswordFree) { this.vpcPasswordFree = vpcPasswordFree; return this; } /** * Sets the value of {@link InstanceProps#getVpcPasswordFree} * @param vpcPasswordFree Property vpcPasswordFree: Specifies whether to enable password free for access within the VPC. * If set to: *

*

    *
  • true: enables password free.
  • *
  • false: disables password free.
  • *
* @return {@code this} */ public Builder vpcPasswordFree(com.aliyun.ros.cdk.core.IResolvable vpcPasswordFree) { this.vpcPasswordFree = vpcPasswordFree; return this; } /** * Sets the value of {@link InstanceProps#getVSwitchId} * @param vSwitchId Property vSwitchId: The vSwitch Id to create ecs instance. * @return {@code this} */ public Builder vSwitchId(java.lang.String vSwitchId) { this.vSwitchId = vSwitchId; return this; } /** * Sets the value of {@link InstanceProps#getVSwitchId} * @param vSwitchId Property vSwitchId: The vSwitch Id to create ecs instance. * @return {@code this} */ public Builder vSwitchId(com.aliyun.ros.cdk.core.IResolvable vSwitchId) { this.vSwitchId = vSwitchId; return this; } /** * Sets the value of {@link InstanceProps#getZoneId} * @param zoneId Property zoneId: The zone id of input region. * @return {@code this} */ public Builder zoneId(java.lang.String zoneId) { this.zoneId = zoneId; return this; } /** * Sets the value of {@link InstanceProps#getZoneId} * @param zoneId Property zoneId: The zone id of input region. * @return {@code this} */ public Builder zoneId(com.aliyun.ros.cdk.core.IResolvable zoneId) { this.zoneId = zoneId; return this; } /** * Builds the configured instance. * @return a new instance of {@link InstanceProps} * @throws NullPointerException if any required attribute was not provided */ @Override public InstanceProps build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link InstanceProps} */ @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements InstanceProps { private final java.lang.Object autoRenewDuration; private final java.lang.Object backupPolicy; private final java.lang.Object chargeType; private final java.lang.Object connections; private final java.lang.Object deletionForce; private final java.lang.Object deletionProtection; private final java.lang.Object engineVersion; private final java.lang.Object evictionPolicy; private final java.lang.Object instanceClass; private final java.lang.Object instanceMaintainTime; private final java.lang.Object instanceName; private final java.lang.Object nodeType; private final java.lang.Object password; private final java.lang.Object period; private final java.lang.Object periodUnit; private final java.lang.Object productType; private final java.lang.Object resourceGroupId; private final java.lang.Object secondaryZoneId; private final java.lang.Object securityGroupId; private final java.lang.Object shardCount; private final java.lang.Object sslEnabled; private final java.util.List tags; private final java.lang.Object tairConfig; private final java.lang.Object vpcId; private final java.lang.Object vpcPasswordFree; private final java.lang.Object vSwitchId; private final java.lang.Object zoneId; /** * 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.autoRenewDuration = software.amazon.jsii.Kernel.get(this, "autoRenewDuration", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.backupPolicy = software.amazon.jsii.Kernel.get(this, "backupPolicy", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.chargeType = software.amazon.jsii.Kernel.get(this, "chargeType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.connections = software.amazon.jsii.Kernel.get(this, "connections", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.deletionForce = software.amazon.jsii.Kernel.get(this, "deletionForce", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.deletionProtection = software.amazon.jsii.Kernel.get(this, "deletionProtection", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.engineVersion = software.amazon.jsii.Kernel.get(this, "engineVersion", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.evictionPolicy = software.amazon.jsii.Kernel.get(this, "evictionPolicy", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.instanceClass = software.amazon.jsii.Kernel.get(this, "instanceClass", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.instanceMaintainTime = software.amazon.jsii.Kernel.get(this, "instanceMaintainTime", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.instanceName = software.amazon.jsii.Kernel.get(this, "instanceName", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.nodeType = software.amazon.jsii.Kernel.get(this, "nodeType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.password = software.amazon.jsii.Kernel.get(this, "password", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.period = software.amazon.jsii.Kernel.get(this, "period", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.periodUnit = software.amazon.jsii.Kernel.get(this, "periodUnit", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.productType = software.amazon.jsii.Kernel.get(this, "productType", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.resourceGroupId = software.amazon.jsii.Kernel.get(this, "resourceGroupId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.secondaryZoneId = software.amazon.jsii.Kernel.get(this, "secondaryZoneId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.securityGroupId = software.amazon.jsii.Kernel.get(this, "securityGroupId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.shardCount = software.amazon.jsii.Kernel.get(this, "shardCount", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.sslEnabled = software.amazon.jsii.Kernel.get(this, "sslEnabled", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.tags = software.amazon.jsii.Kernel.get(this, "tags", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(com.aliyun.ros.cdk.redis.RosInstance.TagsProperty.class))); this.tairConfig = software.amazon.jsii.Kernel.get(this, "tairConfig", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.vpcId = software.amazon.jsii.Kernel.get(this, "vpcId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.vpcPasswordFree = software.amazon.jsii.Kernel.get(this, "vpcPasswordFree", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.vSwitchId = software.amazon.jsii.Kernel.get(this, "vSwitchId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.zoneId = software.amazon.jsii.Kernel.get(this, "zoneId", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ @SuppressWarnings("unchecked") protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.autoRenewDuration = builder.autoRenewDuration; this.backupPolicy = builder.backupPolicy; this.chargeType = builder.chargeType; this.connections = builder.connections; this.deletionForce = builder.deletionForce; this.deletionProtection = builder.deletionProtection; this.engineVersion = builder.engineVersion; this.evictionPolicy = builder.evictionPolicy; this.instanceClass = builder.instanceClass; this.instanceMaintainTime = builder.instanceMaintainTime; this.instanceName = builder.instanceName; this.nodeType = builder.nodeType; this.password = builder.password; this.period = builder.period; this.periodUnit = builder.periodUnit; this.productType = builder.productType; this.resourceGroupId = builder.resourceGroupId; this.secondaryZoneId = builder.secondaryZoneId; this.securityGroupId = builder.securityGroupId; this.shardCount = builder.shardCount; this.sslEnabled = builder.sslEnabled; this.tags = (java.util.List)builder.tags; this.tairConfig = builder.tairConfig; this.vpcId = builder.vpcId; this.vpcPasswordFree = builder.vpcPasswordFree; this.vSwitchId = builder.vSwitchId; this.zoneId = builder.zoneId; } @Override public final java.lang.Object getAutoRenewDuration() { return this.autoRenewDuration; } @Override public final java.lang.Object getBackupPolicy() { return this.backupPolicy; } @Override public final java.lang.Object getChargeType() { return this.chargeType; } @Override public final java.lang.Object getConnections() { return this.connections; } @Override public final java.lang.Object getDeletionForce() { return this.deletionForce; } @Override public final java.lang.Object getDeletionProtection() { return this.deletionProtection; } @Override public final java.lang.Object getEngineVersion() { return this.engineVersion; } @Override public final java.lang.Object getEvictionPolicy() { return this.evictionPolicy; } @Override public final java.lang.Object getInstanceClass() { return this.instanceClass; } @Override public final java.lang.Object getInstanceMaintainTime() { return this.instanceMaintainTime; } @Override public final java.lang.Object getInstanceName() { return this.instanceName; } @Override public final java.lang.Object getNodeType() { return this.nodeType; } @Override public final java.lang.Object getPassword() { return this.password; } @Override public final java.lang.Object getPeriod() { return this.period; } @Override public final java.lang.Object getPeriodUnit() { return this.periodUnit; } @Override public final java.lang.Object getProductType() { return this.productType; } @Override public final java.lang.Object getResourceGroupId() { return this.resourceGroupId; } @Override public final java.lang.Object getSecondaryZoneId() { return this.secondaryZoneId; } @Override public final java.lang.Object getSecurityGroupId() { return this.securityGroupId; } @Override public final java.lang.Object getShardCount() { return this.shardCount; } @Override public final java.lang.Object getSslEnabled() { return this.sslEnabled; } @Override public final java.util.List getTags() { return this.tags; } @Override public final java.lang.Object getTairConfig() { return this.tairConfig; } @Override public final java.lang.Object getVpcId() { return this.vpcId; } @Override public final java.lang.Object getVpcPasswordFree() { return this.vpcPasswordFree; } @Override public final java.lang.Object getVSwitchId() { return this.vSwitchId; } @Override public final java.lang.Object getZoneId() { return this.zoneId; } @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.getAutoRenewDuration() != null) { data.set("autoRenewDuration", om.valueToTree(this.getAutoRenewDuration())); } if (this.getBackupPolicy() != null) { data.set("backupPolicy", om.valueToTree(this.getBackupPolicy())); } if (this.getChargeType() != null) { data.set("chargeType", om.valueToTree(this.getChargeType())); } if (this.getConnections() != null) { data.set("connections", om.valueToTree(this.getConnections())); } if (this.getDeletionForce() != null) { data.set("deletionForce", om.valueToTree(this.getDeletionForce())); } if (this.getDeletionProtection() != null) { data.set("deletionProtection", om.valueToTree(this.getDeletionProtection())); } if (this.getEngineVersion() != null) { data.set("engineVersion", om.valueToTree(this.getEngineVersion())); } if (this.getEvictionPolicy() != null) { data.set("evictionPolicy", om.valueToTree(this.getEvictionPolicy())); } if (this.getInstanceClass() != null) { data.set("instanceClass", om.valueToTree(this.getInstanceClass())); } if (this.getInstanceMaintainTime() != null) { data.set("instanceMaintainTime", om.valueToTree(this.getInstanceMaintainTime())); } if (this.getInstanceName() != null) { data.set("instanceName", om.valueToTree(this.getInstanceName())); } if (this.getNodeType() != null) { data.set("nodeType", om.valueToTree(this.getNodeType())); } if (this.getPassword() != null) { data.set("password", om.valueToTree(this.getPassword())); } if (this.getPeriod() != null) { data.set("period", om.valueToTree(this.getPeriod())); } if (this.getPeriodUnit() != null) { data.set("periodUnit", om.valueToTree(this.getPeriodUnit())); } if (this.getProductType() != null) { data.set("productType", om.valueToTree(this.getProductType())); } if (this.getResourceGroupId() != null) { data.set("resourceGroupId", om.valueToTree(this.getResourceGroupId())); } if (this.getSecondaryZoneId() != null) { data.set("secondaryZoneId", om.valueToTree(this.getSecondaryZoneId())); } if (this.getSecurityGroupId() != null) { data.set("securityGroupId", om.valueToTree(this.getSecurityGroupId())); } if (this.getShardCount() != null) { data.set("shardCount", om.valueToTree(this.getShardCount())); } if (this.getSslEnabled() != null) { data.set("sslEnabled", om.valueToTree(this.getSslEnabled())); } if (this.getTags() != null) { data.set("tags", om.valueToTree(this.getTags())); } if (this.getTairConfig() != null) { data.set("tairConfig", om.valueToTree(this.getTairConfig())); } if (this.getVpcId() != null) { data.set("vpcId", om.valueToTree(this.getVpcId())); } if (this.getVpcPasswordFree() != null) { data.set("vpcPasswordFree", om.valueToTree(this.getVpcPasswordFree())); } if (this.getVSwitchId() != null) { data.set("vSwitchId", om.valueToTree(this.getVSwitchId())); } if (this.getZoneId() != null) { data.set("zoneId", om.valueToTree(this.getZoneId())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@alicloud/ros-cdk-redis.InstanceProps")); 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; InstanceProps.Jsii$Proxy that = (InstanceProps.Jsii$Proxy) o; if (this.autoRenewDuration != null ? !this.autoRenewDuration.equals(that.autoRenewDuration) : that.autoRenewDuration != null) return false; if (this.backupPolicy != null ? !this.backupPolicy.equals(that.backupPolicy) : that.backupPolicy != null) return false; if (this.chargeType != null ? !this.chargeType.equals(that.chargeType) : that.chargeType != null) return false; if (this.connections != null ? !this.connections.equals(that.connections) : that.connections != null) return false; if (this.deletionForce != null ? !this.deletionForce.equals(that.deletionForce) : that.deletionForce != null) return false; if (this.deletionProtection != null ? !this.deletionProtection.equals(that.deletionProtection) : that.deletionProtection != null) return false; if (this.engineVersion != null ? !this.engineVersion.equals(that.engineVersion) : that.engineVersion != null) return false; if (this.evictionPolicy != null ? !this.evictionPolicy.equals(that.evictionPolicy) : that.evictionPolicy != null) return false; if (this.instanceClass != null ? !this.instanceClass.equals(that.instanceClass) : that.instanceClass != null) return false; if (this.instanceMaintainTime != null ? !this.instanceMaintainTime.equals(that.instanceMaintainTime) : that.instanceMaintainTime != null) return false; if (this.instanceName != null ? !this.instanceName.equals(that.instanceName) : that.instanceName != null) return false; if (this.nodeType != null ? !this.nodeType.equals(that.nodeType) : that.nodeType != null) return false; if (this.password != null ? !this.password.equals(that.password) : that.password != null) return false; if (this.period != null ? !this.period.equals(that.period) : that.period != null) return false; if (this.periodUnit != null ? !this.periodUnit.equals(that.periodUnit) : that.periodUnit != null) return false; if (this.productType != null ? !this.productType.equals(that.productType) : that.productType != null) return false; if (this.resourceGroupId != null ? !this.resourceGroupId.equals(that.resourceGroupId) : that.resourceGroupId != null) return false; if (this.secondaryZoneId != null ? !this.secondaryZoneId.equals(that.secondaryZoneId) : that.secondaryZoneId != null) return false; if (this.securityGroupId != null ? !this.securityGroupId.equals(that.securityGroupId) : that.securityGroupId != null) return false; if (this.shardCount != null ? !this.shardCount.equals(that.shardCount) : that.shardCount != null) return false; if (this.sslEnabled != null ? !this.sslEnabled.equals(that.sslEnabled) : that.sslEnabled != null) return false; if (this.tags != null ? !this.tags.equals(that.tags) : that.tags != null) return false; if (this.tairConfig != null ? !this.tairConfig.equals(that.tairConfig) : that.tairConfig != null) return false; if (this.vpcId != null ? !this.vpcId.equals(that.vpcId) : that.vpcId != null) return false; if (this.vpcPasswordFree != null ? !this.vpcPasswordFree.equals(that.vpcPasswordFree) : that.vpcPasswordFree != null) return false; if (this.vSwitchId != null ? !this.vSwitchId.equals(that.vSwitchId) : that.vSwitchId != null) return false; return this.zoneId != null ? this.zoneId.equals(that.zoneId) : that.zoneId == null; } @Override public final int hashCode() { int result = this.autoRenewDuration != null ? this.autoRenewDuration.hashCode() : 0; result = 31 * result + (this.backupPolicy != null ? this.backupPolicy.hashCode() : 0); result = 31 * result + (this.chargeType != null ? this.chargeType.hashCode() : 0); result = 31 * result + (this.connections != null ? this.connections.hashCode() : 0); result = 31 * result + (this.deletionForce != null ? this.deletionForce.hashCode() : 0); result = 31 * result + (this.deletionProtection != null ? this.deletionProtection.hashCode() : 0); result = 31 * result + (this.engineVersion != null ? this.engineVersion.hashCode() : 0); result = 31 * result + (this.evictionPolicy != null ? this.evictionPolicy.hashCode() : 0); result = 31 * result + (this.instanceClass != null ? this.instanceClass.hashCode() : 0); result = 31 * result + (this.instanceMaintainTime != null ? this.instanceMaintainTime.hashCode() : 0); result = 31 * result + (this.instanceName != null ? this.instanceName.hashCode() : 0); result = 31 * result + (this.nodeType != null ? this.nodeType.hashCode() : 0); result = 31 * result + (this.password != null ? this.password.hashCode() : 0); result = 31 * result + (this.period != null ? this.period.hashCode() : 0); result = 31 * result + (this.periodUnit != null ? this.periodUnit.hashCode() : 0); result = 31 * result + (this.productType != null ? this.productType.hashCode() : 0); result = 31 * result + (this.resourceGroupId != null ? this.resourceGroupId.hashCode() : 0); result = 31 * result + (this.secondaryZoneId != null ? this.secondaryZoneId.hashCode() : 0); result = 31 * result + (this.securityGroupId != null ? this.securityGroupId.hashCode() : 0); result = 31 * result + (this.shardCount != null ? this.shardCount.hashCode() : 0); result = 31 * result + (this.sslEnabled != null ? this.sslEnabled.hashCode() : 0); result = 31 * result + (this.tags != null ? this.tags.hashCode() : 0); result = 31 * result + (this.tairConfig != null ? this.tairConfig.hashCode() : 0); result = 31 * result + (this.vpcId != null ? this.vpcId.hashCode() : 0); result = 31 * result + (this.vpcPasswordFree != null ? this.vpcPasswordFree.hashCode() : 0); result = 31 * result + (this.vSwitchId != null ? this.vSwitchId.hashCode() : 0); result = 31 * result + (this.zoneId != null ? this.zoneId.hashCode() : 0); return result; } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy