com.pulumi.aws.ec2.outputs.GetVpnGatewayResult 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.aws.ec2.outputs;
import com.pulumi.aws.ec2.outputs.GetVpnGatewayFilter;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import javax.annotation.Nullable;
@CustomType
public final class GetVpnGatewayResult {
private String amazonSideAsn;
private String arn;
private String attachedVpcId;
private String availabilityZone;
private @Nullable List filters;
private String id;
private String state;
private Map tags;
private GetVpnGatewayResult() {}
public String amazonSideAsn() {
return this.amazonSideAsn;
}
public String arn() {
return this.arn;
}
public String attachedVpcId() {
return this.attachedVpcId;
}
public String availabilityZone() {
return this.availabilityZone;
}
public List filters() {
return this.filters == null ? List.of() : this.filters;
}
public String id() {
return this.id;
}
public String state() {
return this.state;
}
public Map tags() {
return this.tags;
}
public static Builder builder() {
return new Builder();
}
public static Builder builder(GetVpnGatewayResult defaults) {
return new Builder(defaults);
}
@CustomType.Builder
public static final class Builder {
private String amazonSideAsn;
private String arn;
private String attachedVpcId;
private String availabilityZone;
private @Nullable List filters;
private String id;
private String state;
private Map tags;
public Builder() {}
public Builder(GetVpnGatewayResult defaults) {
Objects.requireNonNull(defaults);
this.amazonSideAsn = defaults.amazonSideAsn;
this.arn = defaults.arn;
this.attachedVpcId = defaults.attachedVpcId;
this.availabilityZone = defaults.availabilityZone;
this.filters = defaults.filters;
this.id = defaults.id;
this.state = defaults.state;
this.tags = defaults.tags;
}
@CustomType.Setter
public Builder amazonSideAsn(String amazonSideAsn) {
if (amazonSideAsn == null) {
throw new MissingRequiredPropertyException("GetVpnGatewayResult", "amazonSideAsn");
}
this.amazonSideAsn = amazonSideAsn;
return this;
}
@CustomType.Setter
public Builder arn(String arn) {
if (arn == null) {
throw new MissingRequiredPropertyException("GetVpnGatewayResult", "arn");
}
this.arn = arn;
return this;
}
@CustomType.Setter
public Builder attachedVpcId(String attachedVpcId) {
if (attachedVpcId == null) {
throw new MissingRequiredPropertyException("GetVpnGatewayResult", "attachedVpcId");
}
this.attachedVpcId = attachedVpcId;
return this;
}
@CustomType.Setter
public Builder availabilityZone(String availabilityZone) {
if (availabilityZone == null) {
throw new MissingRequiredPropertyException("GetVpnGatewayResult", "availabilityZone");
}
this.availabilityZone = availabilityZone;
return this;
}
@CustomType.Setter
public Builder filters(@Nullable List filters) {
this.filters = filters;
return this;
}
public Builder filters(GetVpnGatewayFilter... filters) {
return filters(List.of(filters));
}
@CustomType.Setter
public Builder id(String id) {
if (id == null) {
throw new MissingRequiredPropertyException("GetVpnGatewayResult", "id");
}
this.id = id;
return this;
}
@CustomType.Setter
public Builder state(String state) {
if (state == null) {
throw new MissingRequiredPropertyException("GetVpnGatewayResult", "state");
}
this.state = state;
return this;
}
@CustomType.Setter
public Builder tags(Map tags) {
if (tags == null) {
throw new MissingRequiredPropertyException("GetVpnGatewayResult", "tags");
}
this.tags = tags;
return this;
}
public GetVpnGatewayResult build() {
final var _resultValue = new GetVpnGatewayResult();
_resultValue.amazonSideAsn = amazonSideAsn;
_resultValue.arn = arn;
_resultValue.attachedVpcId = attachedVpcId;
_resultValue.availabilityZone = availabilityZone;
_resultValue.filters = filters;
_resultValue.id = id;
_resultValue.state = state;
_resultValue.tags = tags;
return _resultValue;
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy