com.pulumi.linode.outputs.ObjectStorageBucketLifecycleRuleExpiration Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of linode Show documentation
Show all versions of linode Show documentation
A Pulumi package for creating and managing linode 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.linode.outputs;
import com.pulumi.core.annotations.CustomType;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class ObjectStorageBucketLifecycleRuleExpiration {
/**
* @return Specifies the date after which you want the corresponding action to take effect.
*
*/
private @Nullable String date;
/**
* @return Specifies the number of days after object creation when the specific rule action takes effect.
*
*/
private @Nullable Integer days;
/**
* @return On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Linode Object Storage to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
*
*/
private @Nullable Boolean expiredObjectDeleteMarker;
private ObjectStorageBucketLifecycleRuleExpiration() {}
/**
* @return Specifies the date after which you want the corresponding action to take effect.
*
*/
public Optional date() {
return Optional.ofNullable(this.date);
}
/**
* @return Specifies the number of days after object creation when the specific rule action takes effect.
*
*/
public Optional days() {
return Optional.ofNullable(this.days);
}
/**
* @return On a versioned bucket (versioning-enabled or versioning-suspended bucket), you can add this element in the lifecycle configuration to direct Linode Object Storage to delete expired object delete markers. This cannot be specified with Days or Date in a Lifecycle Expiration Policy.
*
*/
public Optional expiredObjectDeleteMarker() {
return Optional.ofNullable(this.expiredObjectDeleteMarker);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ObjectStorageBucketLifecycleRuleExpiration defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable String date;
private @Nullable Integer days;
private @Nullable Boolean expiredObjectDeleteMarker;
public Builder() {}
public Builder(ObjectStorageBucketLifecycleRuleExpiration defaults) {
Objects.requireNonNull(defaults);
this.date = defaults.date;
this.days = defaults.days;
this.expiredObjectDeleteMarker = defaults.expiredObjectDeleteMarker;
}
@CustomType.Setter
public Builder date(@Nullable String date) {
this.date = date;
return this;
}
@CustomType.Setter
public Builder days(@Nullable Integer days) {
this.days = days;
return this;
}
@CustomType.Setter
public Builder expiredObjectDeleteMarker(@Nullable Boolean expiredObjectDeleteMarker) {
this.expiredObjectDeleteMarker = expiredObjectDeleteMarker;
return this;
}
public ObjectStorageBucketLifecycleRuleExpiration build() {
final var _resultValue = new ObjectStorageBucketLifecycleRuleExpiration();
_resultValue.date = date;
_resultValue.days = days;
_resultValue.expiredObjectDeleteMarker = expiredObjectDeleteMarker;
return _resultValue;
}
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy