Class StorageBucketConfig.Builder
- java.lang.Object
-
- com.hashicorp.cdktf.providers.google.storage_bucket.StorageBucketConfig.Builder
-
- All Implemented Interfaces:
software.amazon.jsii.Builder<StorageBucketConfig>
- Enclosing interface:
- StorageBucketConfig
@Stability(Stable) public static final class StorageBucketConfig.Builder extends Object implements software.amazon.jsii.Builder<StorageBucketConfig>
A builder forStorageBucketConfig
-
-
Constructor Summary
Constructors Constructor Description Builder()
-
Method Summary
-
-
-
Method Detail
-
location
@Stability(Stable) public StorageBucketConfig.Builder location(String location)
Sets the value ofStorageBucketConfig.getLocation()- Parameters:
location- The Google Cloud Storage location. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#location StorageBucket#location}- Returns:
this
-
name
@Stability(Stable) public StorageBucketConfig.Builder name(String name)
Sets the value ofStorageBucketConfig.getName()- Parameters:
name- The name of the bucket. This parameter is required. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#name StorageBucket#name}- Returns:
this
-
autoclass
@Stability(Stable) public StorageBucketConfig.Builder autoclass(StorageBucketAutoclass autoclass)
Sets the value ofStorageBucketConfig.getAutoclass()- Parameters:
autoclass- autoclass block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#autoclass StorageBucket#autoclass}- Returns:
this
-
cors
@Stability(Stable) public StorageBucketConfig.Builder cors(com.hashicorp.cdktf.IResolvable cors)
Sets the value ofStorageBucketConfig.getCors()- Parameters:
cors- cors block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#cors StorageBucket#cors}- Returns:
this
-
cors
@Stability(Stable) public StorageBucketConfig.Builder cors(List<? extends StorageBucketCors> cors)
Sets the value ofStorageBucketConfig.getCors()- Parameters:
cors- cors block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#cors StorageBucket#cors}- Returns:
this
-
customPlacementConfig
@Stability(Stable) public StorageBucketConfig.Builder customPlacementConfig(StorageBucketCustomPlacementConfig customPlacementConfig)
Sets the value ofStorageBucketConfig.getCustomPlacementConfig()- Parameters:
customPlacementConfig- custom_placement_config block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#custom_placement_config StorageBucket#custom_placement_config}- Returns:
this
-
defaultEventBasedHold
@Stability(Stable) public StorageBucketConfig.Builder defaultEventBasedHold(Boolean defaultEventBasedHold)
Sets the value ofStorageBucketConfig.getDefaultEventBasedHold()- Parameters:
defaultEventBasedHold- Whether or not to automatically apply an eventBasedHold to new objects added to the bucket. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#default_event_based_hold StorageBucket#default_event_based_hold}- Returns:
this
-
defaultEventBasedHold
@Stability(Stable) public StorageBucketConfig.Builder defaultEventBasedHold(com.hashicorp.cdktf.IResolvable defaultEventBasedHold)
Sets the value ofStorageBucketConfig.getDefaultEventBasedHold()- Parameters:
defaultEventBasedHold- Whether or not to automatically apply an eventBasedHold to new objects added to the bucket. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#default_event_based_hold StorageBucket#default_event_based_hold}- Returns:
this
-
enableObjectRetention
@Stability(Stable) public StorageBucketConfig.Builder enableObjectRetention(Boolean enableObjectRetention)
Sets the value ofStorageBucketConfig.getEnableObjectRetention()- Parameters:
enableObjectRetention- Enables each object in the bucket to have its own retention policy, which prevents deletion until stored for a specific length of time. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#enable_object_retention StorageBucket#enable_object_retention}- Returns:
this
-
enableObjectRetention
@Stability(Stable) public StorageBucketConfig.Builder enableObjectRetention(com.hashicorp.cdktf.IResolvable enableObjectRetention)
Sets the value ofStorageBucketConfig.getEnableObjectRetention()- Parameters:
enableObjectRetention- Enables each object in the bucket to have its own retention policy, which prevents deletion until stored for a specific length of time. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#enable_object_retention StorageBucket#enable_object_retention}- Returns:
this
-
encryption
@Stability(Stable) public StorageBucketConfig.Builder encryption(StorageBucketEncryption encryption)
Sets the value ofStorageBucketConfig.getEncryption()- Parameters:
encryption- encryption block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#encryption StorageBucket#encryption}- Returns:
this
-
forceDestroy
@Stability(Stable) public StorageBucketConfig.Builder forceDestroy(Boolean forceDestroy)
Sets the value ofStorageBucketConfig.getForceDestroy()- Parameters:
forceDestroy- When deleting a bucket, this boolean option will delete all contained objects. If you try to delete a bucket that contains objects, Terraform will fail that run. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#force_destroy StorageBucket#force_destroy}- Returns:
this
-
forceDestroy
@Stability(Stable) public StorageBucketConfig.Builder forceDestroy(com.hashicorp.cdktf.IResolvable forceDestroy)
Sets the value ofStorageBucketConfig.getForceDestroy()- Parameters:
forceDestroy- When deleting a bucket, this boolean option will delete all contained objects. If you try to delete a bucket that contains objects, Terraform will fail that run. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#force_destroy StorageBucket#force_destroy}- Returns:
this
-
id
@Stability(Stable) public StorageBucketConfig.Builder id(String id)
Sets the value ofStorageBucketConfig.getId()- Parameters:
id- Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#id StorageBucket#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.- Returns:
this
-
labels
@Stability(Stable) public StorageBucketConfig.Builder labels(Map<String,String> labels)
Sets the value ofStorageBucketConfig.getLabels()- Parameters:
labels- A set of key/value label pairs to assign to the bucket. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#labels StorageBucket#labels}- Returns:
this
-
lifecycleRule
@Stability(Stable) public StorageBucketConfig.Builder lifecycleRule(com.hashicorp.cdktf.IResolvable lifecycleRule)
Sets the value ofStorageBucketConfig.getLifecycleRule()- Parameters:
lifecycleRule- lifecycle_rule block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#lifecycle_rule StorageBucket#lifecycle_rule}- Returns:
this
-
lifecycleRule
@Stability(Stable) public StorageBucketConfig.Builder lifecycleRule(List<? extends StorageBucketLifecycleRule> lifecycleRule)
Sets the value ofStorageBucketConfig.getLifecycleRule()- Parameters:
lifecycleRule- lifecycle_rule block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#lifecycle_rule StorageBucket#lifecycle_rule}- Returns:
this
-
logging
@Stability(Stable) public StorageBucketConfig.Builder logging(StorageBucketLogging logging)
Sets the value ofStorageBucketConfig.getLogging()- Parameters:
logging- logging block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#logging StorageBucket#logging}- Returns:
this
-
project
@Stability(Stable) public StorageBucketConfig.Builder project(String project)
Sets the value ofStorageBucketConfig.getProject()- Parameters:
project- The ID of the project in which the resource belongs. If it is not provided, the provider project is used. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#project StorageBucket#project}- Returns:
this
-
publicAccessPrevention
@Stability(Stable) public StorageBucketConfig.Builder publicAccessPrevention(String publicAccessPrevention)
Sets the value ofStorageBucketConfig.getPublicAccessPrevention()- Parameters:
publicAccessPrevention- Prevents public access to a bucket. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#public_access_prevention StorageBucket#public_access_prevention}- Returns:
this
-
requesterPays
@Stability(Stable) public StorageBucketConfig.Builder requesterPays(Boolean requesterPays)
Sets the value ofStorageBucketConfig.getRequesterPays()- Parameters:
requesterPays- Enables Requester Pays on a storage bucket. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#requester_pays StorageBucket#requester_pays}- Returns:
this
-
requesterPays
@Stability(Stable) public StorageBucketConfig.Builder requesterPays(com.hashicorp.cdktf.IResolvable requesterPays)
Sets the value ofStorageBucketConfig.getRequesterPays()- Parameters:
requesterPays- Enables Requester Pays on a storage bucket. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#requester_pays StorageBucket#requester_pays}- Returns:
this
-
retentionPolicy
@Stability(Stable) public StorageBucketConfig.Builder retentionPolicy(StorageBucketRetentionPolicy retentionPolicy)
Sets the value ofStorageBucketConfig.getRetentionPolicy()- Parameters:
retentionPolicy- retention_policy block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#retention_policy StorageBucket#retention_policy}- Returns:
this
-
rpo
@Stability(Stable) public StorageBucketConfig.Builder rpo(String rpo)
Sets the value ofStorageBucketConfig.getRpo()- Parameters:
rpo- Specifies the RPO setting of bucket. If set 'ASYNC_TURBO', The Turbo Replication will be enabled for the dual-region bucket. Value 'DEFAULT' will set RPO setting to default. Turbo Replication is only for buckets in dual-regions.See the docs for more details. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#rpo StorageBucket#rpo}- Returns:
this
-
softDeletePolicy
@Stability(Stable) public StorageBucketConfig.Builder softDeletePolicy(StorageBucketSoftDeletePolicy softDeletePolicy)
Sets the value ofStorageBucketConfig.getSoftDeletePolicy()- Parameters:
softDeletePolicy- soft_delete_policy block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#soft_delete_policy StorageBucket#soft_delete_policy}- Returns:
this
-
storageClass
@Stability(Stable) public StorageBucketConfig.Builder storageClass(String storageClass)
Sets the value ofStorageBucketConfig.getStorageClass()- Parameters:
storageClass- The Storage Class of the new bucket. Supported values include: STANDARD, MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, ARCHIVE. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#storage_class StorageBucket#storage_class}- Returns:
this
-
timeouts
@Stability(Stable) public StorageBucketConfig.Builder timeouts(StorageBucketTimeouts timeouts)
Sets the value ofStorageBucketConfig.getTimeouts()- Parameters:
timeouts- timeouts block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#timeouts StorageBucket#timeouts}- Returns:
this
-
uniformBucketLevelAccess
@Stability(Stable) public StorageBucketConfig.Builder uniformBucketLevelAccess(Boolean uniformBucketLevelAccess)
Sets the value ofStorageBucketConfig.getUniformBucketLevelAccess()- Parameters:
uniformBucketLevelAccess- Enables uniform bucket-level access on a bucket. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#uniform_bucket_level_access StorageBucket#uniform_bucket_level_access}- Returns:
this
-
uniformBucketLevelAccess
@Stability(Stable) public StorageBucketConfig.Builder uniformBucketLevelAccess(com.hashicorp.cdktf.IResolvable uniformBucketLevelAccess)
Sets the value ofStorageBucketConfig.getUniformBucketLevelAccess()- Parameters:
uniformBucketLevelAccess- Enables uniform bucket-level access on a bucket. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#uniform_bucket_level_access StorageBucket#uniform_bucket_level_access}- Returns:
this
-
versioning
@Stability(Stable) public StorageBucketConfig.Builder versioning(StorageBucketVersioning versioning)
Sets the value ofStorageBucketConfig.getVersioning()- Parameters:
versioning- versioning block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#versioning StorageBucket#versioning}- Returns:
this
-
website
@Stability(Stable) public StorageBucketConfig.Builder website(StorageBucketWebsite website)
Sets the value ofStorageBucketConfig.getWebsite()- Parameters:
website- website block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/5.43.1/docs/resources/storage_bucket#website StorageBucket#website}- Returns:
this
-
connection
@Stability(Experimental) public StorageBucketConfig.Builder connection(com.hashicorp.cdktf.SSHProvisionerConnection connection)
Sets the value ofTerraformMetaArguments.getConnection()- Parameters:
connection- the value to be set.- Returns:
this
-
connection
@Stability(Experimental) public StorageBucketConfig.Builder connection(com.hashicorp.cdktf.WinrmProvisionerConnection connection)
Sets the value ofTerraformMetaArguments.getConnection()- Parameters:
connection- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public StorageBucketConfig.Builder count(Number count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
count
@Stability(Experimental) public StorageBucketConfig.Builder count(com.hashicorp.cdktf.TerraformCount count)
Sets the value ofTerraformMetaArguments.getCount()- Parameters:
count- the value to be set.- Returns:
this
-
dependsOn
@Stability(Experimental) public StorageBucketConfig.Builder dependsOn(List<? extends com.hashicorp.cdktf.ITerraformDependable> dependsOn)
Sets the value ofTerraformMetaArguments.getDependsOn()- Parameters:
dependsOn- the value to be set.- Returns:
this
-
forEach
@Stability(Experimental) public StorageBucketConfig.Builder forEach(com.hashicorp.cdktf.ITerraformIterator forEach)
Sets the value ofTerraformMetaArguments.getForEach()- Parameters:
forEach- the value to be set.- Returns:
this
-
lifecycle
@Stability(Experimental) public StorageBucketConfig.Builder lifecycle(com.hashicorp.cdktf.TerraformResourceLifecycle lifecycle)
Sets the value ofTerraformMetaArguments.getLifecycle()- Parameters:
lifecycle- the value to be set.- Returns:
this
-
provider
@Stability(Experimental) public StorageBucketConfig.Builder provider(com.hashicorp.cdktf.TerraformProvider provider)
Sets the value ofTerraformMetaArguments.getProvider()- Parameters:
provider- the value to be set.- Returns:
this
-
provisioners
@Stability(Experimental) public StorageBucketConfig.Builder provisioners(List<? extends Object> provisioners)
Sets the value ofTerraformMetaArguments.getProvisioners()- Parameters:
provisioners- the value to be set.- Returns:
this
-
build
@Stability(Stable) public StorageBucketConfig build()
Builds the configured instance.- Specified by:
buildin interfacesoftware.amazon.jsii.Builder<StorageBucketConfig>- Returns:
- a new instance of
StorageBucketConfig - Throws:
NullPointerException- if any required attribute was not provided
-
-