com.pulumi.azure.storage.ObjectReplicationArgs Maven / Gradle / Ivy
// *** 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.storage;
import com.pulumi.azure.storage.inputs.ObjectReplicationRuleArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Objects;
public final class ObjectReplicationArgs extends com.pulumi.resources.ResourceArgs {
public static final ObjectReplicationArgs Empty = new ObjectReplicationArgs();
/**
* The ID of the destination storage account. Changing this forces a new Storage Object Replication to be created.
*
*/
@Import(name="destinationStorageAccountId", required=true)
private Output destinationStorageAccountId;
/**
* @return The ID of the destination storage account. Changing this forces a new Storage Object Replication to be created.
*
*/
public Output destinationStorageAccountId() {
return this.destinationStorageAccountId;
}
/**
* One or more `rules` blocks as defined below.
*
*/
@Import(name="rules", required=true)
private Output> rules;
/**
* @return One or more `rules` blocks as defined below.
*
*/
public Output> rules() {
return this.rules;
}
/**
* The ID of the source storage account. Changing this forces a new Storage Object Replication to be created.
*
*/
@Import(name="sourceStorageAccountId", required=true)
private Output sourceStorageAccountId;
/**
* @return The ID of the source storage account. Changing this forces a new Storage Object Replication to be created.
*
*/
public Output sourceStorageAccountId() {
return this.sourceStorageAccountId;
}
private ObjectReplicationArgs() {}
private ObjectReplicationArgs(ObjectReplicationArgs $) {
this.destinationStorageAccountId = $.destinationStorageAccountId;
this.rules = $.rules;
this.sourceStorageAccountId = $.sourceStorageAccountId;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(ObjectReplicationArgs defaults) {
return new Builder(defaults);
}
public static final class Builder {
private ObjectReplicationArgs $;
public Builder() {
$ = new ObjectReplicationArgs();
}
public Builder(ObjectReplicationArgs defaults) {
$ = new ObjectReplicationArgs(Objects.requireNonNull(defaults));
}
/**
* @param destinationStorageAccountId The ID of the destination storage account. Changing this forces a new Storage Object Replication to be created.
*
* @return builder
*
*/
public Builder destinationStorageAccountId(Output destinationStorageAccountId) {
$.destinationStorageAccountId = destinationStorageAccountId;
return this;
}
/**
* @param destinationStorageAccountId The ID of the destination storage account. Changing this forces a new Storage Object Replication to be created.
*
* @return builder
*
*/
public Builder destinationStorageAccountId(String destinationStorageAccountId) {
return destinationStorageAccountId(Output.of(destinationStorageAccountId));
}
/**
* @param rules One or more `rules` blocks as defined below.
*
* @return builder
*
*/
public Builder rules(Output> rules) {
$.rules = rules;
return this;
}
/**
* @param rules One or more `rules` blocks as defined below.
*
* @return builder
*
*/
public Builder rules(List rules) {
return rules(Output.of(rules));
}
/**
* @param rules One or more `rules` blocks as defined below.
*
* @return builder
*
*/
public Builder rules(ObjectReplicationRuleArgs... rules) {
return rules(List.of(rules));
}
/**
* @param sourceStorageAccountId The ID of the source storage account. Changing this forces a new Storage Object Replication to be created.
*
* @return builder
*
*/
public Builder sourceStorageAccountId(Output sourceStorageAccountId) {
$.sourceStorageAccountId = sourceStorageAccountId;
return this;
}
/**
* @param sourceStorageAccountId The ID of the source storage account. Changing this forces a new Storage Object Replication to be created.
*
* @return builder
*
*/
public Builder sourceStorageAccountId(String sourceStorageAccountId) {
return sourceStorageAccountId(Output.of(sourceStorageAccountId));
}
public ObjectReplicationArgs build() {
if ($.destinationStorageAccountId == null) {
throw new MissingRequiredPropertyException("ObjectReplicationArgs", "destinationStorageAccountId");
}
if ($.rules == null) {
throw new MissingRequiredPropertyException("ObjectReplicationArgs", "rules");
}
if ($.sourceStorageAccountId == null) {
throw new MissingRequiredPropertyException("ObjectReplicationArgs", "sourceStorageAccountId");
}
return $;
}
}
}