Class RedisCluster.Builder

  • All Implemented Interfaces:
    software.amazon.jsii.Builder<RedisCluster>
    Enclosing class:
    RedisCluster

    @Stability(Stable)
    public static final class RedisCluster.Builder
    extends Object
    implements software.amazon.jsii.Builder<RedisCluster>
    A fluent builder for RedisCluster.
    • Method Detail

      • create

        @Stability(Stable)
        public static RedisCluster.Builder create​(software.constructs.Construct scope,
                                                  String id)
        Parameters:
        scope - The scope in which to define this construct. This parameter is required.
        id - The scoped construct ID. This parameter is required.
        Returns:
        a new instance of RedisCluster.Builder.
      • connection

        @Stability(Experimental)
        public RedisCluster.Builder connection​(com.hashicorp.cdktf.SSHProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • connection

        @Stability(Experimental)
        public RedisCluster.Builder connection​(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
        Parameters:
        connection - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public RedisCluster.Builder count​(Number count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • count

        @Stability(Experimental)
        public RedisCluster.Builder count​(com.hashicorp.cdktf.TerraformCount count)
        Parameters:
        count - This parameter is required.
        Returns:
        this
      • dependsOn

        @Stability(Experimental)
        public RedisCluster.Builder dependsOn​(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
        Parameters:
        dependsOn - This parameter is required.
        Returns:
        this
      • forEach

        @Stability(Experimental)
        public RedisCluster.Builder forEach​(com.hashicorp.cdktf.ITerraformIterator forEach)
        Parameters:
        forEach - This parameter is required.
        Returns:
        this
      • lifecycle

        @Stability(Experimental)
        public RedisCluster.Builder lifecycle​(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
        Parameters:
        lifecycle - This parameter is required.
        Returns:
        this
      • provider

        @Stability(Experimental)
        public RedisCluster.Builder provider​(com.hashicorp.cdktf.TerraformProvider provider)
        Parameters:
        provider - This parameter is required.
        Returns:
        this
      • provisioners

        @Stability(Experimental)
        public RedisCluster.Builder provisioners​(List<? extends Object> provisioners)
        Parameters:
        provisioners - This parameter is required.
        Returns:
        this
      • pscConfigs

        @Stability(Stable)
        public RedisCluster.Builder pscConfigs​(com.hashicorp.cdktf.IResolvable pscConfigs)
        psc_configs block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#psc_configs RedisCluster#psc_configs}

        Parameters:
        pscConfigs - psc_configs block. This parameter is required.
        Returns:
        this
      • pscConfigs

        @Stability(Stable)
        public RedisCluster.Builder pscConfigs​(List<? extends RedisClusterPscConfigs> pscConfigs)
        psc_configs block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#psc_configs RedisCluster#psc_configs}

        Parameters:
        pscConfigs - psc_configs block. This parameter is required.
        Returns:
        this
      • shardCount

        @Stability(Stable)
        public RedisCluster.Builder shardCount​(Number shardCount)
        Required. Number of shards for the Redis cluster.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#shard_count RedisCluster#shard_count}

        Parameters:
        shardCount - Required. Number of shards for the Redis cluster. This parameter is required.
        Returns:
        this
      • authorizationMode

        @Stability(Stable)
        public RedisCluster.Builder authorizationMode​(String authorizationMode)
        Optional.

        The authorization mode of the Redis cluster. If not provided, auth feature is disabled for the cluster. Default value: "AUTH_MODE_DISABLED" Possible values: ["AUTH_MODE_UNSPECIFIED", "AUTH_MODE_IAM_AUTH", "AUTH_MODE_DISABLED"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#authorization_mode RedisCluster#authorization_mode}

        Parameters:
        authorizationMode - Optional. This parameter is required.
        Returns:
        this
      • id

        @Stability(Stable)
        public RedisCluster.Builder id​(String id)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#id RedisCluster#id}.

        Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.

        Parameters:
        id - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#id RedisCluster#id}. This parameter is required.
        Returns:
        this
      • name

        @Stability(Stable)
        public RedisCluster.Builder name​(String name)
        Unique name of the resource in this scope including project and location using the form: projects/{projectId}/locations/{locationId}/clusters/{clusterId}.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#name RedisCluster#name}

        Parameters:
        name - Unique name of the resource in this scope including project and location using the form: projects/{projectId}/locations/{locationId}/clusters/{clusterId}. This parameter is required.
        Returns:
        this
      • nodeType

        @Stability(Stable)
        public RedisCluster.Builder nodeType​(String nodeType)
        The nodeType for the Redis cluster.

        If not provided, REDIS_HIGHMEM_MEDIUM will be used as default Possible values: ["REDIS_SHARED_CORE_NANO", "REDIS_HIGHMEM_MEDIUM", "REDIS_HIGHMEM_XLARGE", "REDIS_STANDARD_SMALL"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#node_type RedisCluster#node_type}

        Parameters:
        nodeType - The nodeType for the Redis cluster. This parameter is required.
        Returns:
        this
      • project

        @Stability(Stable)
        public RedisCluster.Builder project​(String project)
        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#project RedisCluster#project}.

        Parameters:
        project - Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#project RedisCluster#project}. This parameter is required.
        Returns:
        this
      • redisConfigs

        @Stability(Stable)
        public RedisCluster.Builder redisConfigs​(Map<String,​String> redisConfigs)
        Configure Redis Cluster behavior using a subset of native Redis configuration parameters.

        Please check Memorystore documentation for the list of supported parameters: https://cloud.google.com/memorystore/docs/cluster/supported-instance-configurations Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#redis_configs RedisCluster#redis_configs}

        Parameters:
        redisConfigs - Configure Redis Cluster behavior using a subset of native Redis configuration parameters. This parameter is required.
        Returns:
        this
      • region

        @Stability(Stable)
        public RedisCluster.Builder region​(String region)
        The name of the region of the Redis cluster.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#region RedisCluster#region}

        Parameters:
        region - The name of the region of the Redis cluster. This parameter is required.
        Returns:
        this
      • replicaCount

        @Stability(Stable)
        public RedisCluster.Builder replicaCount​(Number replicaCount)
        Optional. The number of replica nodes per shard.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#replica_count RedisCluster#replica_count}

        Parameters:
        replicaCount - Optional. The number of replica nodes per shard. This parameter is required.
        Returns:
        this
      • timeouts

        @Stability(Stable)
        public RedisCluster.Builder timeouts​(RedisClusterTimeouts timeouts)
        timeouts block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#timeouts RedisCluster#timeouts}

        Parameters:
        timeouts - timeouts block. This parameter is required.
        Returns:
        this
      • transitEncryptionMode

        @Stability(Stable)
        public RedisCluster.Builder transitEncryptionMode​(String transitEncryptionMode)
        Optional.

        The in-transit encryption for the Redis cluster. If not provided, encryption is disabled for the cluster. Default value: "TRANSIT_ENCRYPTION_MODE_DISABLED" Possible values: ["TRANSIT_ENCRYPTION_MODE_UNSPECIFIED", "TRANSIT_ENCRYPTION_MODE_DISABLED", "TRANSIT_ENCRYPTION_MODE_SERVER_AUTHENTICATION"] Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#transit_encryption_mode RedisCluster#transit_encryption_mode}

        Parameters:
        transitEncryptionMode - Optional. This parameter is required.
        Returns:
        this
      • zoneDistributionConfig

        @Stability(Stable)
        public RedisCluster.Builder zoneDistributionConfig​(RedisClusterZoneDistributionConfig zoneDistributionConfig)
        zone_distribution_config block.

        Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/redis_cluster#zone_distribution_config RedisCluster#zone_distribution_config}

        Parameters:
        zoneDistributionConfig - zone_distribution_config block. This parameter is required.
        Returns:
        this
      • build

        @Stability(Stable)
        public RedisCluster build()
        Specified by:
        build in interface software.amazon.jsii.Builder<RedisCluster>
        Returns:
        a newly built instance of RedisCluster.