
com.pulumi.azurenative.storage.outputs.LastAccessTimeTrackingPolicyResponse Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure-native Show documentation
Show all versions of azure-native Show documentation
A native Pulumi package for creating and managing Azure 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.azurenative.storage.outputs;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;
@CustomType
public final class LastAccessTimeTrackingPolicyResponse {
/**
* @return An array of predefined supported blob types. Only blockBlob is the supported value. This field is currently read only
*
*/
private @Nullable List blobType;
/**
* @return When set to true last access time based tracking is enabled.
*
*/
private Boolean enable;
/**
* @return Name of the policy. The valid value is AccessTimeTracking. This field is currently read only
*
*/
private @Nullable String name;
/**
* @return The field specifies blob object tracking granularity in days, typically how often the blob object should be tracked.This field is currently read only with value as 1
*
*/
private @Nullable Integer trackingGranularityInDays;
private LastAccessTimeTrackingPolicyResponse() {}
/**
* @return An array of predefined supported blob types. Only blockBlob is the supported value. This field is currently read only
*
*/
public List blobType() {
return this.blobType == null ? List.of() : this.blobType;
}
/**
* @return When set to true last access time based tracking is enabled.
*
*/
public Boolean enable() {
return this.enable;
}
/**
* @return Name of the policy. The valid value is AccessTimeTracking. This field is currently read only
*
*/
public Optional name() {
return Optional.ofNullable(this.name);
}
/**
* @return The field specifies blob object tracking granularity in days, typically how often the blob object should be tracked.This field is currently read only with value as 1
*
*/
public Optional trackingGranularityInDays() {
return Optional.ofNullable(this.trackingGranularityInDays);
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(LastAccessTimeTrackingPolicyResponse defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private @Nullable List blobType;
private Boolean enable;
private @Nullable String name;
private @Nullable Integer trackingGranularityInDays;
public Builder() {}
public Builder(LastAccessTimeTrackingPolicyResponse defaults) {
Objects.requireNonNull(defaults);
this.blobType = defaults.blobType;
this.enable = defaults.enable;
this.name = defaults.name;
this.trackingGranularityInDays = defaults.trackingGranularityInDays;
}
@CustomType.Setter
public Builder blobType(@Nullable List blobType) {
this.blobType = blobType;
return this;
}
public Builder blobType(String... blobType) {
return blobType(List.of(blobType));
}
@CustomType.Setter
public Builder enable(Boolean enable) {
if (enable == null) {
throw new MissingRequiredPropertyException("LastAccessTimeTrackingPolicyResponse", "enable");
}
this.enable = enable;
return this;
}
@CustomType.Setter
public Builder name(@Nullable String name) {
this.name = name;
return this;
}
@CustomType.Setter
public Builder trackingGranularityInDays(@Nullable Integer trackingGranularityInDays) {
this.trackingGranularityInDays = trackingGranularityInDays;
return this;
}
public LastAccessTimeTrackingPolicyResponse build() {
final var _resultValue = new LastAccessTimeTrackingPolicyResponse();
_resultValue.blobType = blobType;
_resultValue.enable = enable;
_resultValue.name = name;
_resultValue.trackingGranularityInDays = trackingGranularityInDays;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy