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.aws.storagegateway.inputs.TapePoolState Maven / Gradle / Ivy
Go to download
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud 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.aws.storagegateway.inputs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Integer;
import java.lang.String;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
public final class TapePoolState extends com.pulumi.resources.ResourceArgs {
public static final TapePoolState Empty = new TapePoolState();
/**
* Volume Amazon Resource Name (ARN), e.g., `aws_storagegateway_tape_pool.example arn:aws:storagegateway:us-east-1:123456789012:tapepool/pool-12345678`.
*
*/
@Import(name="arn")
private @Nullable Output arn;
/**
* @return Volume Amazon Resource Name (ARN), e.g., `aws_storagegateway_tape_pool.example arn:aws:storagegateway:us-east-1:123456789012:tapepool/pool-12345678`.
*
*/
public Optional> arn() {
return Optional.ofNullable(this.arn);
}
/**
* The name of the new custom tape pool.
*
*/
@Import(name="poolName")
private @Nullable Output poolName;
/**
* @return The name of the new custom tape pool.
*
*/
public Optional> poolName() {
return Optional.ofNullable(this.poolName);
}
/**
* Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days). Default value is 0.
*
*/
@Import(name="retentionLockTimeInDays")
private @Nullable Output retentionLockTimeInDays;
/**
* @return Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days). Default value is 0.
*
*/
public Optional> retentionLockTimeInDays() {
return Optional.ofNullable(this.retentionLockTimeInDays);
}
/**
* Tape retention lock can be configured in two modes. When configured in governance mode, AWS accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root AWS account. Possible values are `COMPLIANCE`, `GOVERNANCE`, and `NONE`. Default value is `NONE`.
*
*/
@Import(name="retentionLockType")
private @Nullable Output retentionLockType;
/**
* @return Tape retention lock can be configured in two modes. When configured in governance mode, AWS accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root AWS account. Possible values are `COMPLIANCE`, `GOVERNANCE`, and `NONE`. Default value is `NONE`.
*
*/
public Optional> retentionLockType() {
return Optional.ofNullable(this.retentionLockType);
}
/**
* The storage class that is associated with the new custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class that corresponds to the pool. Possible values are `DEEP_ARCHIVE` or `GLACIER`.
*
*/
@Import(name="storageClass")
private @Nullable Output storageClass;
/**
* @return The storage class that is associated with the new custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class that corresponds to the pool. Possible values are `DEEP_ARCHIVE` or `GLACIER`.
*
*/
public Optional> storageClass() {
return Optional.ofNullable(this.storageClass);
}
/**
* Key-value map of resource tags. .If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
*/
@Import(name="tags")
private @Nullable Output> tags;
/**
* @return Key-value map of resource tags. .If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
*/
public Optional>> tags() {
return Optional.ofNullable(this.tags);
}
/**
* A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
@Import(name="tagsAll")
private @Nullable Output> tagsAll;
/**
* @return A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Optional>> tagsAll() {
return Optional.ofNullable(this.tagsAll);
}
private TapePoolState() {}
private TapePoolState(TapePoolState $) {
this.arn = $.arn;
this.poolName = $.poolName;
this.retentionLockTimeInDays = $.retentionLockTimeInDays;
this.retentionLockType = $.retentionLockType;
this.storageClass = $.storageClass;
this.tags = $.tags;
this.tagsAll = $.tagsAll;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(TapePoolState defaults) {
return new Builder(defaults);
}
public static final class Builder {
private TapePoolState $;
public Builder() {
$ = new TapePoolState();
}
public Builder(TapePoolState defaults) {
$ = new TapePoolState(Objects.requireNonNull(defaults));
}
/**
* @param arn Volume Amazon Resource Name (ARN), e.g., `aws_storagegateway_tape_pool.example arn:aws:storagegateway:us-east-1:123456789012:tapepool/pool-12345678`.
*
* @return builder
*
*/
public Builder arn(@Nullable Output arn) {
$.arn = arn;
return this;
}
/**
* @param arn Volume Amazon Resource Name (ARN), e.g., `aws_storagegateway_tape_pool.example arn:aws:storagegateway:us-east-1:123456789012:tapepool/pool-12345678`.
*
* @return builder
*
*/
public Builder arn(String arn) {
return arn(Output.of(arn));
}
/**
* @param poolName The name of the new custom tape pool.
*
* @return builder
*
*/
public Builder poolName(@Nullable Output poolName) {
$.poolName = poolName;
return this;
}
/**
* @param poolName The name of the new custom tape pool.
*
* @return builder
*
*/
public Builder poolName(String poolName) {
return poolName(Output.of(poolName));
}
/**
* @param retentionLockTimeInDays Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days). Default value is 0.
*
* @return builder
*
*/
public Builder retentionLockTimeInDays(@Nullable Output retentionLockTimeInDays) {
$.retentionLockTimeInDays = retentionLockTimeInDays;
return this;
}
/**
* @param retentionLockTimeInDays Tape retention lock time is set in days. Tape retention lock can be enabled for up to 100 years (36,500 days). Default value is 0.
*
* @return builder
*
*/
public Builder retentionLockTimeInDays(Integer retentionLockTimeInDays) {
return retentionLockTimeInDays(Output.of(retentionLockTimeInDays));
}
/**
* @param retentionLockType Tape retention lock can be configured in two modes. When configured in governance mode, AWS accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root AWS account. Possible values are `COMPLIANCE`, `GOVERNANCE`, and `NONE`. Default value is `NONE`.
*
* @return builder
*
*/
public Builder retentionLockType(@Nullable Output retentionLockType) {
$.retentionLockType = retentionLockType;
return this;
}
/**
* @param retentionLockType Tape retention lock can be configured in two modes. When configured in governance mode, AWS accounts with specific IAM permissions are authorized to remove the tape retention lock from archived virtual tapes. When configured in compliance mode, the tape retention lock cannot be removed by any user, including the root AWS account. Possible values are `COMPLIANCE`, `GOVERNANCE`, and `NONE`. Default value is `NONE`.
*
* @return builder
*
*/
public Builder retentionLockType(String retentionLockType) {
return retentionLockType(Output.of(retentionLockType));
}
/**
* @param storageClass The storage class that is associated with the new custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class that corresponds to the pool. Possible values are `DEEP_ARCHIVE` or `GLACIER`.
*
* @return builder
*
*/
public Builder storageClass(@Nullable Output storageClass) {
$.storageClass = storageClass;
return this;
}
/**
* @param storageClass The storage class that is associated with the new custom pool. When you use your backup application to eject the tape, the tape is archived directly into the storage class that corresponds to the pool. Possible values are `DEEP_ARCHIVE` or `GLACIER`.
*
* @return builder
*
*/
public Builder storageClass(String storageClass) {
return storageClass(Output.of(storageClass));
}
/**
* @param tags Key-value map of resource tags. .If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
* @return builder
*
*/
public Builder tags(@Nullable Output> tags) {
$.tags = tags;
return this;
}
/**
* @param tags Key-value map of resource tags. .If configured with a provider `default_tags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
*
* @return builder
*
*/
public Builder tags(Map tags) {
return tags(Output.of(tags));
}
/**
* @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @return builder
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Builder tagsAll(@Nullable Output> tagsAll) {
$.tagsAll = tagsAll;
return this;
}
/**
* @param tagsAll A map of tags assigned to the resource, including those inherited from the provider `default_tags` configuration block.
*
* @return builder
*
* @deprecated
* Please use `tags` instead.
*
*/
@Deprecated /* Please use `tags` instead. */
public Builder tagsAll(Map tagsAll) {
return tagsAll(Output.of(tagsAll));
}
public TapePoolState build() {
return $;
}
}
}