All Downloads are FREE. Search and download functionalities are using the official Maven repository.
Please wait. This can take some minutes ...
Many resources are needed to download a project. Please understand that we have to compensate our server costs. Thank you in advance.
Project price only 1 $
You can buy this project and download/modify it how often you want.
com.pulumi.alicloud.oss.inputs.BucketState Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing AliCloud resources.
// *** WARNING: this file was generated by pulumi-java-gen. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
package com.pulumi.alicloud.oss.inputs;
import com.pulumi.alicloud.oss.inputs.BucketAccessMonitorArgs;
import com.pulumi.alicloud.oss.inputs.BucketCorsRuleArgs;
import com.pulumi.alicloud.oss.inputs.BucketLifecycleRuleArgs;
import com.pulumi.alicloud.oss.inputs.BucketLoggingArgs;
import com.pulumi.alicloud.oss.inputs.BucketRefererConfigArgs;
import com.pulumi.alicloud.oss.inputs.BucketServerSideEncryptionRuleArgs;
import com.pulumi.alicloud.oss.inputs.BucketTransferAccelerationArgs;
import com.pulumi.alicloud.oss.inputs.BucketVersioningArgs;
import com.pulumi.alicloud.oss.inputs.BucketWebsiteArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.Object;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class BucketState extends com.pulumi.resources.ResourceArgs {
public static final BucketState Empty = new BucketState();
/**
* A access monitor status of a bucket. See `access_monitor` below.
*
*/
@Import(name="accessMonitor")
private @Nullable Output accessMonitor;
/**
* @return A access monitor status of a bucket. See `access_monitor` below.
*
*/
public Optional> accessMonitor() {
return Optional.ofNullable(this.accessMonitor);
}
/**
* The [canned ACL](https://www.alibabacloud.com/help/doc-detail/31898.htm) to apply. Can be "private", "public-read" and "public-read-write". This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketAcl` instead.
*
* @deprecated
* Field 'acl' has been deprecated since provider version 1.220.0. New resource 'alicloud_oss_bucket_acl' instead.
*
*/
@Deprecated /* Field 'acl' has been deprecated since provider version 1.220.0. New resource 'alicloud_oss_bucket_acl' instead. */
@Import(name="acl")
private @Nullable Output acl;
/**
* @return The [canned ACL](https://www.alibabacloud.com/help/doc-detail/31898.htm) to apply. Can be "private", "public-read" and "public-read-write". This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketAcl` instead.
*
* @deprecated
* Field 'acl' has been deprecated since provider version 1.220.0. New resource 'alicloud_oss_bucket_acl' instead.
*
*/
@Deprecated /* Field 'acl' has been deprecated since provider version 1.220.0. New resource 'alicloud_oss_bucket_acl' instead. */
public Optional> acl() {
return Optional.ofNullable(this.acl);
}
@Import(name="bucket")
private @Nullable Output bucket;
public Optional> bucket() {
return Optional.ofNullable(this.bucket);
}
/**
* A rule of [Cross-Origin Resource Sharing](https://www.alibabacloud.com/help/doc-detail/31903.htm). The items of core rule are no more than 10 for every OSS bucket. See `cors_rule` below.
*
*/
@Import(name="corsRules")
private @Nullable Output> corsRules;
/**
* @return A rule of [Cross-Origin Resource Sharing](https://www.alibabacloud.com/help/doc-detail/31903.htm). The items of core rule are no more than 10 for every OSS bucket. See `cors_rule` below.
*
*/
public Optional>> corsRules() {
return Optional.ofNullable(this.corsRules);
}
/**
* The creation date of the bucket.
*
*/
@Import(name="creationDate")
private @Nullable Output creationDate;
/**
* @return The creation date of the bucket.
*
*/
public Optional> creationDate() {
return Optional.ofNullable(this.creationDate);
}
/**
* The extranet access endpoint of the bucket.
*
*/
@Import(name="extranetEndpoint")
private @Nullable Output extranetEndpoint;
/**
* @return The extranet access endpoint of the bucket.
*
*/
public Optional> extranetEndpoint() {
return Optional.ofNullable(this.extranetEndpoint);
}
/**
* A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error. These objects are not recoverable. Defaults to "false".
*
*/
@Import(name="forceDestroy")
private @Nullable Output forceDestroy;
/**
* @return A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error. These objects are not recoverable. Defaults to "false".
*
*/
public Optional> forceDestroy() {
return Optional.ofNullable(this.forceDestroy);
}
/**
* The intranet access endpoint of the bucket.
*
*/
@Import(name="intranetEndpoint")
private @Nullable Output intranetEndpoint;
/**
* @return The intranet access endpoint of the bucket.
*
*/
public Optional> intranetEndpoint() {
return Optional.ofNullable(this.intranetEndpoint);
}
/**
* A boolean that indicates lifecycle rules allow prefix overlap.
*
*/
@Import(name="lifecycleRuleAllowSameActionOverlap")
private @Nullable Output lifecycleRuleAllowSameActionOverlap;
/**
* @return A boolean that indicates lifecycle rules allow prefix overlap.
*
*/
public Optional> lifecycleRuleAllowSameActionOverlap() {
return Optional.ofNullable(this.lifecycleRuleAllowSameActionOverlap);
}
/**
* A configuration of [object lifecycle management](https://www.alibabacloud.com/help/doc-detail/31904.htm). See `lifecycle_rule` below.
*
*/
@Import(name="lifecycleRules")
private @Nullable Output> lifecycleRules;
/**
* @return A configuration of [object lifecycle management](https://www.alibabacloud.com/help/doc-detail/31904.htm). See `lifecycle_rule` below.
*
*/
public Optional>> lifecycleRules() {
return Optional.ofNullable(this.lifecycleRules);
}
/**
* The location of the bucket.
*
*/
@Import(name="location")
private @Nullable Output location;
/**
* @return The location of the bucket.
*
*/
public Optional> location() {
return Optional.ofNullable(this.location);
}
/**
* A Settings of [bucket logging](https://www.alibabacloud.com/help/doc-detail/31900.htm). See `logging` below.
*
*/
@Import(name="logging")
private @Nullable Output logging;
/**
* @return A Settings of [bucket logging](https://www.alibabacloud.com/help/doc-detail/31900.htm). See `logging` below.
*
*/
public Optional> logging() {
return Optional.ofNullable(this.logging);
}
/**
* The flag of using logging enable container. Defaults true.
*
* @deprecated
* Deprecated from 1.37.0. When `logging` is set, the bucket logging will be able.
*
*/
@Deprecated /* Deprecated from 1.37.0. When `logging` is set, the bucket logging will be able. */
@Import(name="loggingIsenable")
private @Nullable Output loggingIsenable;
/**
* @return The flag of using logging enable container. Defaults true.
*
* @deprecated
* Deprecated from 1.37.0. When `logging` is set, the bucket logging will be able.
*
*/
@Deprecated /* Deprecated from 1.37.0. When `logging` is set, the bucket logging will be able. */
public Optional> loggingIsenable() {
return Optional.ofNullable(this.loggingIsenable);
}
/**
* The bucket owner.
*
*/
@Import(name="owner")
private @Nullable Output owner;
/**
* @return The bucket owner.
*
*/
public Optional> owner() {
return Optional.ofNullable(this.owner);
}
/**
* Json format text of bucket policy [bucket policy management](https://www.alibabacloud.com/help/doc-detail/100680.htm). This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketPolicy` instead.
*
*/
@Import(name="policy")
private @Nullable Output policy;
/**
* @return Json format text of bucket policy [bucket policy management](https://www.alibabacloud.com/help/doc-detail/100680.htm). This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketPolicy` instead.
*
*/
public Optional> policy() {
return Optional.ofNullable(this.policy);
}
/**
* The [redundancy type](https://www.alibabacloud.com/help/doc-detail/90589.htm) to enable. Can be "LRS", and "ZRS". Defaults to "LRS".
*
*/
@Import(name="redundancyType")
private @Nullable Output redundancyType;
/**
* @return The [redundancy type](https://www.alibabacloud.com/help/doc-detail/90589.htm) to enable. Can be "LRS", and "ZRS". Defaults to "LRS".
*
*/
public Optional> redundancyType() {
return Optional.ofNullable(this.redundancyType);
}
/**
* The configuration of [referer](https://www.alibabacloud.com/help/doc-detail/31901.htm). This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketReferer` instead. See `referer_config` below.
*
*/
@Import(name="refererConfig")
private @Nullable Output refererConfig;
/**
* @return The configuration of [referer](https://www.alibabacloud.com/help/doc-detail/31901.htm). This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketReferer` instead. See `referer_config` below.
*
*/
public Optional> refererConfig() {
return Optional.ofNullable(this.refererConfig);
}
/**
* The ID of the resource group to which the bucket belongs.
*
*/
@Import(name="resourceGroupId")
private @Nullable Output resourceGroupId;
/**
* @return The ID of the resource group to which the bucket belongs.
*
*/
public Optional> resourceGroupId() {
return Optional.ofNullable(this.resourceGroupId);
}
/**
* A configuration of server-side encryption. See `server_side_encryption_rule` below.
*
*/
@Import(name="serverSideEncryptionRule")
private @Nullable Output serverSideEncryptionRule;
/**
* @return A configuration of server-side encryption. See `server_side_encryption_rule` below.
*
*/
public Optional> serverSideEncryptionRule() {
return Optional.ofNullable(this.serverSideEncryptionRule);
}
/**
* The [storage class](https://www.alibabacloud.com/help/doc-detail/51374.htm) to apply. Can be "Standard", "IA", "Archive", "ColdArchive" and "DeepColdArchive". Defaults to "Standard". "ColdArchive" is available since 1.203.0. "DeepColdArchive" is available since 1.209.0.
*
*/
@Import(name="storageClass")
private @Nullable Output storageClass;
/**
* @return The [storage class](https://www.alibabacloud.com/help/doc-detail/51374.htm) to apply. Can be "Standard", "IA", "Archive", "ColdArchive" and "DeepColdArchive". Defaults to "Standard". "ColdArchive" is available since 1.203.0. "DeepColdArchive" is available since 1.209.0.
*
*/
public Optional> storageClass() {
return Optional.ofNullable(this.storageClass);
}
/**
* A mapping of tags to assign to the bucket. The items are no more than 10 for a bucket.
*
*/
@Import(name="tags")
private @Nullable Output> tags;
/**
* @return A mapping of tags to assign to the bucket. The items are no more than 10 for a bucket.
*
*/
public Optional>> tags() {
return Optional.ofNullable(this.tags);
}
/**
* A transfer acceleration status of a bucket. See `transfer_acceleration` below.
*
*/
@Import(name="transferAcceleration")
private @Nullable Output transferAcceleration;
/**
* @return A transfer acceleration status of a bucket. See `transfer_acceleration` below.
*
*/
public Optional> transferAcceleration() {
return Optional.ofNullable(this.transferAcceleration);
}
/**
* A state of versioning. See `versioning` below.
*
*/
@Import(name="versioning")
private @Nullable Output versioning;
/**
* @return A state of versioning. See `versioning` below.
*
*/
public Optional> versioning() {
return Optional.ofNullable(this.versioning);
}
/**
* A website configuration. See `website` below.
*
*/
@Import(name="website")
private @Nullable Output website;
/**
* @return A website configuration. See `website` below.
*
*/
public Optional> website() {
return Optional.ofNullable(this.website);
}
private BucketState() {}
private BucketState(BucketState $) {
this.accessMonitor = $.accessMonitor;
this.acl = $.acl;
this.bucket = $.bucket;
this.corsRules = $.corsRules;
this.creationDate = $.creationDate;
this.extranetEndpoint = $.extranetEndpoint;
this.forceDestroy = $.forceDestroy;
this.intranetEndpoint = $.intranetEndpoint;
this.lifecycleRuleAllowSameActionOverlap = $.lifecycleRuleAllowSameActionOverlap;
this.lifecycleRules = $.lifecycleRules;
this.location = $.location;
this.logging = $.logging;
this.loggingIsenable = $.loggingIsenable;
this.owner = $.owner;
this.policy = $.policy;
this.redundancyType = $.redundancyType;
this.refererConfig = $.refererConfig;
this.resourceGroupId = $.resourceGroupId;
this.serverSideEncryptionRule = $.serverSideEncryptionRule;
this.storageClass = $.storageClass;
this.tags = $.tags;
this.transferAcceleration = $.transferAcceleration;
this.versioning = $.versioning;
this.website = $.website;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(BucketState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private BucketState $;
public Builder() {
$ = new BucketState();
}
public Builder(BucketState defaults) {
$ = new BucketState(Objects.requireNonNull(defaults));
}
/**
* @param accessMonitor A access monitor status of a bucket. See `access_monitor` below.
*
* @return builder
*
*/
public Builder accessMonitor(@Nullable Output accessMonitor) {
$.accessMonitor = accessMonitor;
return this;
}
/**
* @param accessMonitor A access monitor status of a bucket. See `access_monitor` below.
*
* @return builder
*
*/
public Builder accessMonitor(BucketAccessMonitorArgs accessMonitor) {
return accessMonitor(Output.of(accessMonitor));
}
/**
* @param acl The [canned ACL](https://www.alibabacloud.com/help/doc-detail/31898.htm) to apply. Can be "private", "public-read" and "public-read-write". This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketAcl` instead.
*
* @return builder
*
* @deprecated
* Field 'acl' has been deprecated since provider version 1.220.0. New resource 'alicloud_oss_bucket_acl' instead.
*
*/
@Deprecated /* Field 'acl' has been deprecated since provider version 1.220.0. New resource 'alicloud_oss_bucket_acl' instead. */
public Builder acl(@Nullable Output acl) {
$.acl = acl;
return this;
}
/**
* @param acl The [canned ACL](https://www.alibabacloud.com/help/doc-detail/31898.htm) to apply. Can be "private", "public-read" and "public-read-write". This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketAcl` instead.
*
* @return builder
*
* @deprecated
* Field 'acl' has been deprecated since provider version 1.220.0. New resource 'alicloud_oss_bucket_acl' instead.
*
*/
@Deprecated /* Field 'acl' has been deprecated since provider version 1.220.0. New resource 'alicloud_oss_bucket_acl' instead. */
public Builder acl(String acl) {
return acl(Output.of(acl));
}
public Builder bucket(@Nullable Output bucket) {
$.bucket = bucket;
return this;
}
public Builder bucket(String bucket) {
return bucket(Output.of(bucket));
}
/**
* @param corsRules A rule of [Cross-Origin Resource Sharing](https://www.alibabacloud.com/help/doc-detail/31903.htm). The items of core rule are no more than 10 for every OSS bucket. See `cors_rule` below.
*
* @return builder
*
*/
public Builder corsRules(@Nullable Output> corsRules) {
$.corsRules = corsRules;
return this;
}
/**
* @param corsRules A rule of [Cross-Origin Resource Sharing](https://www.alibabacloud.com/help/doc-detail/31903.htm). The items of core rule are no more than 10 for every OSS bucket. See `cors_rule` below.
*
* @return builder
*
*/
public Builder corsRules(List corsRules) {
return corsRules(Output.of(corsRules));
}
/**
* @param corsRules A rule of [Cross-Origin Resource Sharing](https://www.alibabacloud.com/help/doc-detail/31903.htm). The items of core rule are no more than 10 for every OSS bucket. See `cors_rule` below.
*
* @return builder
*
*/
public Builder corsRules(BucketCorsRuleArgs... corsRules) {
return corsRules(List.of(corsRules));
}
/**
* @param creationDate The creation date of the bucket.
*
* @return builder
*
*/
public Builder creationDate(@Nullable Output creationDate) {
$.creationDate = creationDate;
return this;
}
/**
* @param creationDate The creation date of the bucket.
*
* @return builder
*
*/
public Builder creationDate(String creationDate) {
return creationDate(Output.of(creationDate));
}
/**
* @param extranetEndpoint The extranet access endpoint of the bucket.
*
* @return builder
*
*/
public Builder extranetEndpoint(@Nullable Output extranetEndpoint) {
$.extranetEndpoint = extranetEndpoint;
return this;
}
/**
* @param extranetEndpoint The extranet access endpoint of the bucket.
*
* @return builder
*
*/
public Builder extranetEndpoint(String extranetEndpoint) {
return extranetEndpoint(Output.of(extranetEndpoint));
}
/**
* @param forceDestroy A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error. These objects are not recoverable. Defaults to "false".
*
* @return builder
*
*/
public Builder forceDestroy(@Nullable Output forceDestroy) {
$.forceDestroy = forceDestroy;
return this;
}
/**
* @param forceDestroy A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error. These objects are not recoverable. Defaults to "false".
*
* @return builder
*
*/
public Builder forceDestroy(Boolean forceDestroy) {
return forceDestroy(Output.of(forceDestroy));
}
/**
* @param intranetEndpoint The intranet access endpoint of the bucket.
*
* @return builder
*
*/
public Builder intranetEndpoint(@Nullable Output intranetEndpoint) {
$.intranetEndpoint = intranetEndpoint;
return this;
}
/**
* @param intranetEndpoint The intranet access endpoint of the bucket.
*
* @return builder
*
*/
public Builder intranetEndpoint(String intranetEndpoint) {
return intranetEndpoint(Output.of(intranetEndpoint));
}
/**
* @param lifecycleRuleAllowSameActionOverlap A boolean that indicates lifecycle rules allow prefix overlap.
*
* @return builder
*
*/
public Builder lifecycleRuleAllowSameActionOverlap(@Nullable Output lifecycleRuleAllowSameActionOverlap) {
$.lifecycleRuleAllowSameActionOverlap = lifecycleRuleAllowSameActionOverlap;
return this;
}
/**
* @param lifecycleRuleAllowSameActionOverlap A boolean that indicates lifecycle rules allow prefix overlap.
*
* @return builder
*
*/
public Builder lifecycleRuleAllowSameActionOverlap(Boolean lifecycleRuleAllowSameActionOverlap) {
return lifecycleRuleAllowSameActionOverlap(Output.of(lifecycleRuleAllowSameActionOverlap));
}
/**
* @param lifecycleRules A configuration of [object lifecycle management](https://www.alibabacloud.com/help/doc-detail/31904.htm). See `lifecycle_rule` below.
*
* @return builder
*
*/
public Builder lifecycleRules(@Nullable Output> lifecycleRules) {
$.lifecycleRules = lifecycleRules;
return this;
}
/**
* @param lifecycleRules A configuration of [object lifecycle management](https://www.alibabacloud.com/help/doc-detail/31904.htm). See `lifecycle_rule` below.
*
* @return builder
*
*/
public Builder lifecycleRules(List lifecycleRules) {
return lifecycleRules(Output.of(lifecycleRules));
}
/**
* @param lifecycleRules A configuration of [object lifecycle management](https://www.alibabacloud.com/help/doc-detail/31904.htm). See `lifecycle_rule` below.
*
* @return builder
*
*/
public Builder lifecycleRules(BucketLifecycleRuleArgs... lifecycleRules) {
return lifecycleRules(List.of(lifecycleRules));
}
/**
* @param location The location of the bucket.
*
* @return builder
*
*/
public Builder location(@Nullable Output location) {
$.location = location;
return this;
}
/**
* @param location The location of the bucket.
*
* @return builder
*
*/
public Builder location(String location) {
return location(Output.of(location));
}
/**
* @param logging A Settings of [bucket logging](https://www.alibabacloud.com/help/doc-detail/31900.htm). See `logging` below.
*
* @return builder
*
*/
public Builder logging(@Nullable Output logging) {
$.logging = logging;
return this;
}
/**
* @param logging A Settings of [bucket logging](https://www.alibabacloud.com/help/doc-detail/31900.htm). See `logging` below.
*
* @return builder
*
*/
public Builder logging(BucketLoggingArgs logging) {
return logging(Output.of(logging));
}
/**
* @param loggingIsenable The flag of using logging enable container. Defaults true.
*
* @return builder
*
* @deprecated
* Deprecated from 1.37.0. When `logging` is set, the bucket logging will be able.
*
*/
@Deprecated /* Deprecated from 1.37.0. When `logging` is set, the bucket logging will be able. */
public Builder loggingIsenable(@Nullable Output loggingIsenable) {
$.loggingIsenable = loggingIsenable;
return this;
}
/**
* @param loggingIsenable The flag of using logging enable container. Defaults true.
*
* @return builder
*
* @deprecated
* Deprecated from 1.37.0. When `logging` is set, the bucket logging will be able.
*
*/
@Deprecated /* Deprecated from 1.37.0. When `logging` is set, the bucket logging will be able. */
public Builder loggingIsenable(Boolean loggingIsenable) {
return loggingIsenable(Output.of(loggingIsenable));
}
/**
* @param owner The bucket owner.
*
* @return builder
*
*/
public Builder owner(@Nullable Output owner) {
$.owner = owner;
return this;
}
/**
* @param owner The bucket owner.
*
* @return builder
*
*/
public Builder owner(String owner) {
return owner(Output.of(owner));
}
/**
* @param policy Json format text of bucket policy [bucket policy management](https://www.alibabacloud.com/help/doc-detail/100680.htm). This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketPolicy` instead.
*
* @return builder
*
*/
public Builder policy(@Nullable Output policy) {
$.policy = policy;
return this;
}
/**
* @param policy Json format text of bucket policy [bucket policy management](https://www.alibabacloud.com/help/doc-detail/100680.htm). This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketPolicy` instead.
*
* @return builder
*
*/
public Builder policy(String policy) {
return policy(Output.of(policy));
}
/**
* @param redundancyType The [redundancy type](https://www.alibabacloud.com/help/doc-detail/90589.htm) to enable. Can be "LRS", and "ZRS". Defaults to "LRS".
*
* @return builder
*
*/
public Builder redundancyType(@Nullable Output redundancyType) {
$.redundancyType = redundancyType;
return this;
}
/**
* @param redundancyType The [redundancy type](https://www.alibabacloud.com/help/doc-detail/90589.htm) to enable. Can be "LRS", and "ZRS". Defaults to "LRS".
*
* @return builder
*
*/
public Builder redundancyType(String redundancyType) {
return redundancyType(Output.of(redundancyType));
}
/**
* @param refererConfig The configuration of [referer](https://www.alibabacloud.com/help/doc-detail/31901.htm). This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketReferer` instead. See `referer_config` below.
*
* @return builder
*
*/
public Builder refererConfig(@Nullable Output refererConfig) {
$.refererConfig = refererConfig;
return this;
}
/**
* @param refererConfig The configuration of [referer](https://www.alibabacloud.com/help/doc-detail/31901.htm). This property has been deprecated since 1.220.0, please use the resource `alicloud.oss.BucketReferer` instead. See `referer_config` below.
*
* @return builder
*
*/
public Builder refererConfig(BucketRefererConfigArgs refererConfig) {
return refererConfig(Output.of(refererConfig));
}
/**
* @param resourceGroupId The ID of the resource group to which the bucket belongs.
*
* @return builder
*
*/
public Builder resourceGroupId(@Nullable Output resourceGroupId) {
$.resourceGroupId = resourceGroupId;
return this;
}
/**
* @param resourceGroupId The ID of the resource group to which the bucket belongs.
*
* @return builder
*
*/
public Builder resourceGroupId(String resourceGroupId) {
return resourceGroupId(Output.of(resourceGroupId));
}
/**
* @param serverSideEncryptionRule A configuration of server-side encryption. See `server_side_encryption_rule` below.
*
* @return builder
*
*/
public Builder serverSideEncryptionRule(@Nullable Output serverSideEncryptionRule) {
$.serverSideEncryptionRule = serverSideEncryptionRule;
return this;
}
/**
* @param serverSideEncryptionRule A configuration of server-side encryption. See `server_side_encryption_rule` below.
*
* @return builder
*
*/
public Builder serverSideEncryptionRule(BucketServerSideEncryptionRuleArgs serverSideEncryptionRule) {
return serverSideEncryptionRule(Output.of(serverSideEncryptionRule));
}
/**
* @param storageClass The [storage class](https://www.alibabacloud.com/help/doc-detail/51374.htm) to apply. Can be "Standard", "IA", "Archive", "ColdArchive" and "DeepColdArchive". Defaults to "Standard". "ColdArchive" is available since 1.203.0. "DeepColdArchive" is available since 1.209.0.
*
* @return builder
*
*/
public Builder storageClass(@Nullable Output storageClass) {
$.storageClass = storageClass;
return this;
}
/**
* @param storageClass The [storage class](https://www.alibabacloud.com/help/doc-detail/51374.htm) to apply. Can be "Standard", "IA", "Archive", "ColdArchive" and "DeepColdArchive". Defaults to "Standard". "ColdArchive" is available since 1.203.0. "DeepColdArchive" is available since 1.209.0.
*
* @return builder
*
*/
public Builder storageClass(String storageClass) {
return storageClass(Output.of(storageClass));
}
/**
* @param tags A mapping of tags to assign to the bucket. The items are no more than 10 for a bucket.
*
* @return builder
*
*/
public Builder tags(@Nullable Output> tags) {
$.tags = tags;
return this;
}
/**
* @param tags A mapping of tags to assign to the bucket. The items are no more than 10 for a bucket.
*
* @return builder
*
*/
public Builder tags(Map tags) {
return tags(Output.of(tags));
}
/**
* @param transferAcceleration A transfer acceleration status of a bucket. See `transfer_acceleration` below.
*
* @return builder
*
*/
public Builder transferAcceleration(@Nullable Output transferAcceleration) {
$.transferAcceleration = transferAcceleration;
return this;
}
/**
* @param transferAcceleration A transfer acceleration status of a bucket. See `transfer_acceleration` below.
*
* @return builder
*
*/
public Builder transferAcceleration(BucketTransferAccelerationArgs transferAcceleration) {
return transferAcceleration(Output.of(transferAcceleration));
}
/**
* @param versioning A state of versioning. See `versioning` below.
*
* @return builder
*
*/
public Builder versioning(@Nullable Output versioning) {
$.versioning = versioning;
return this;
}
/**
* @param versioning A state of versioning. See `versioning` below.
*
* @return builder
*
*/
public Builder versioning(BucketVersioningArgs versioning) {
return versioning(Output.of(versioning));
}
/**
* @param website A website configuration. See `website` below.
*
* @return builder
*
*/
public Builder website(@Nullable Output website) {
$.website = website;
return this;
}
/**
* @param website A website configuration. See `website` below.
*
* @return builder
*
*/
public Builder website(BucketWebsiteArgs website) {
return website(Output.of(website));
}
public BucketState build() {
return $;
}
}
}