com.pulumi.azure.dataprotection.outputs.BackupPolicyBlobStorageRetentionRule Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of azure Show documentation
Show all versions of azure Show documentation
A Pulumi package for creating and managing Microsoft Azure cloud resources, based on the Terraform azurerm provider. We recommend using the [Azure Native provider](https://github.com/pulumi/pulumi-azure-native) to provision Azure infrastructure. Azure Native provides complete coverage of Azure resources and same-day access to new resources and resource updates.
// *** 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.azure.dataprotection.outputs;
import com.pulumi.azure.dataprotection.outputs.BackupPolicyBlobStorageRetentionRuleCriteria;
import com.pulumi.azure.dataprotection.outputs.BackupPolicyBlobStorageRetentionRuleLifeCycle;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.Objects;
@CustomType
public final class BackupPolicyBlobStorageRetentionRule {
/**
* @return A `criteria` block as defined below. Changing this forces a new Backup Policy Blob Storage to be created.
*
*/
private BackupPolicyBlobStorageRetentionRuleCriteria criteria;
/**
* @return A `life_cycle` block as defined below. Changing this forces a new Backup Policy Blob Storage to be created.
*
*/
private BackupPolicyBlobStorageRetentionRuleLifeCycle lifeCycle;
/**
* @return The name which should be used for this retention rule. Changing this forces a new Backup Policy Blob Storage to be created.
*
*/
private String name;
/**
* @return Specifies the priority of the rule. The priority number must be unique for each rule. The lower the priority number, the higher the priority of the rule. Changing this forces a new Backup Policy Blob Storage to be created.
*
*/
private Integer priority;
private BackupPolicyBlobStorageRetentionRule() {}
/**
* @return A `criteria` block as defined below. Changing this forces a new Backup Policy Blob Storage to be created.
*
*/
public BackupPolicyBlobStorageRetentionRuleCriteria criteria() {
return this.criteria;
}
/**
* @return A `life_cycle` block as defined below. Changing this forces a new Backup Policy Blob Storage to be created.
*
*/
public BackupPolicyBlobStorageRetentionRuleLifeCycle lifeCycle() {
return this.lifeCycle;
}
/**
* @return The name which should be used for this retention rule. Changing this forces a new Backup Policy Blob Storage to be created.
*
*/
public String name() {
return this.name;
}
/**
* @return Specifies the priority of the rule. The priority number must be unique for each rule. The lower the priority number, the higher the priority of the rule. Changing this forces a new Backup Policy Blob Storage to be created.
*
*/
public Integer priority() {
return this.priority;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(BackupPolicyBlobStorageRetentionRule defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private BackupPolicyBlobStorageRetentionRuleCriteria criteria;
private BackupPolicyBlobStorageRetentionRuleLifeCycle lifeCycle;
private String name;
private Integer priority;
public Builder() {}
public Builder(BackupPolicyBlobStorageRetentionRule defaults) {
Objects.requireNonNull(defaults);
this.criteria = defaults.criteria;
this.lifeCycle = defaults.lifeCycle;
this.name = defaults.name;
this.priority = defaults.priority;
}
@CustomType.Setter
public Builder criteria(BackupPolicyBlobStorageRetentionRuleCriteria criteria) {
if (criteria == null) {
throw new MissingRequiredPropertyException("BackupPolicyBlobStorageRetentionRule", "criteria");
}
this.criteria = criteria;
return this;
}
@CustomType.Setter
public Builder lifeCycle(BackupPolicyBlobStorageRetentionRuleLifeCycle lifeCycle) {
if (lifeCycle == null) {
throw new MissingRequiredPropertyException("BackupPolicyBlobStorageRetentionRule", "lifeCycle");
}
this.lifeCycle = lifeCycle;
return this;
}
@CustomType.Setter
public Builder name(String name) {
if (name == null) {
throw new MissingRequiredPropertyException("BackupPolicyBlobStorageRetentionRule", "name");
}
this.name = name;
return this;
}
@CustomType.Setter
public Builder priority(Integer priority) {
if (priority == null) {
throw new MissingRequiredPropertyException("BackupPolicyBlobStorageRetentionRule", "priority");
}
this.priority = priority;
return this;
}
public BackupPolicyBlobStorageRetentionRule build() {
final var _resultValue = new BackupPolicyBlobStorageRetentionRule();
_resultValue.criteria = criteria;
_resultValue.lifeCycle = lifeCycle;
_resultValue.name = name;
_resultValue.priority = priority;
return _resultValue;
}
}
}