All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.aws.ec2transitgateway.outputs.GetTransitGatewayResult 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.ec2transitgateway.outputs;

import com.pulumi.aws.ec2transitgateway.outputs.GetTransitGatewayFilter;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Integer;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import javax.annotation.Nullable;

@CustomType
public final class GetTransitGatewayResult {
    /**
     * @return Private Autonomous System Number (ASN) for the Amazon side of a BGP session
     * 
     */
    private Integer amazonSideAsn;
    /**
     * @return EC2 Transit Gateway ARN
     * 
     */
    private String arn;
    /**
     * @return Identifier of the default association route table
     * 
     */
    private String associationDefaultRouteTableId;
    /**
     * @return Whether resource attachment requests are automatically accepted
     * 
     */
    private String autoAcceptSharedAttachments;
    /**
     * @return Whether resource attachments are automatically associated with the default association route table
     * 
     */
    private String defaultRouteTableAssociation;
    /**
     * @return Whether resource attachments automatically propagate routes to the default propagation route table
     * 
     */
    private String defaultRouteTablePropagation;
    /**
     * @return Description of the EC2 Transit Gateway
     * 
     */
    private String description;
    /**
     * @return Whether DNS support is enabled
     * 
     */
    private String dnsSupport;
    private @Nullable List filters;
    /**
     * @return EC2 Transit Gateway identifier
     * 
     */
    private String id;
    /**
     * @return Whether Multicast support is enabled
     * 
     */
    private String multicastSupport;
    /**
     * @return Identifier of the AWS account that owns the EC2 Transit Gateway
     * 
     */
    private String ownerId;
    /**
     * @return Identifier of the default propagation route table
     * 
     */
    private String propagationDefaultRouteTableId;
    /**
     * @return Whether Security Group Referencing Support is enabled
     * 
     */
    private String securityGroupReferencingSupport;
    /**
     * @return Key-value tags for the EC2 Transit Gateway
     * 
     */
    private Map tags;
    /**
     * @return The list of associated CIDR blocks
     * 
     */
    private List transitGatewayCidrBlocks;
    /**
     * @return Whether VPN Equal Cost Multipath Protocol support is enabled
     * 
     */
    private String vpnEcmpSupport;

    private GetTransitGatewayResult() {}
    /**
     * @return Private Autonomous System Number (ASN) for the Amazon side of a BGP session
     * 
     */
    public Integer amazonSideAsn() {
        return this.amazonSideAsn;
    }
    /**
     * @return EC2 Transit Gateway ARN
     * 
     */
    public String arn() {
        return this.arn;
    }
    /**
     * @return Identifier of the default association route table
     * 
     */
    public String associationDefaultRouteTableId() {
        return this.associationDefaultRouteTableId;
    }
    /**
     * @return Whether resource attachment requests are automatically accepted
     * 
     */
    public String autoAcceptSharedAttachments() {
        return this.autoAcceptSharedAttachments;
    }
    /**
     * @return Whether resource attachments are automatically associated with the default association route table
     * 
     */
    public String defaultRouteTableAssociation() {
        return this.defaultRouteTableAssociation;
    }
    /**
     * @return Whether resource attachments automatically propagate routes to the default propagation route table
     * 
     */
    public String defaultRouteTablePropagation() {
        return this.defaultRouteTablePropagation;
    }
    /**
     * @return Description of the EC2 Transit Gateway
     * 
     */
    public String description() {
        return this.description;
    }
    /**
     * @return Whether DNS support is enabled
     * 
     */
    public String dnsSupport() {
        return this.dnsSupport;
    }
    public List filters() {
        return this.filters == null ? List.of() : this.filters;
    }
    /**
     * @return EC2 Transit Gateway identifier
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Whether Multicast support is enabled
     * 
     */
    public String multicastSupport() {
        return this.multicastSupport;
    }
    /**
     * @return Identifier of the AWS account that owns the EC2 Transit Gateway
     * 
     */
    public String ownerId() {
        return this.ownerId;
    }
    /**
     * @return Identifier of the default propagation route table
     * 
     */
    public String propagationDefaultRouteTableId() {
        return this.propagationDefaultRouteTableId;
    }
    /**
     * @return Whether Security Group Referencing Support is enabled
     * 
     */
    public String securityGroupReferencingSupport() {
        return this.securityGroupReferencingSupport;
    }
    /**
     * @return Key-value tags for the EC2 Transit Gateway
     * 
     */
    public Map tags() {
        return this.tags;
    }
    /**
     * @return The list of associated CIDR blocks
     * 
     */
    public List transitGatewayCidrBlocks() {
        return this.transitGatewayCidrBlocks;
    }
    /**
     * @return Whether VPN Equal Cost Multipath Protocol support is enabled
     * 
     */
    public String vpnEcmpSupport() {
        return this.vpnEcmpSupport;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static Builder builder(GetTransitGatewayResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private Integer amazonSideAsn;
        private String arn;
        private String associationDefaultRouteTableId;
        private String autoAcceptSharedAttachments;
        private String defaultRouteTableAssociation;
        private String defaultRouteTablePropagation;
        private String description;
        private String dnsSupport;
        private @Nullable List filters;
        private String id;
        private String multicastSupport;
        private String ownerId;
        private String propagationDefaultRouteTableId;
        private String securityGroupReferencingSupport;
        private Map tags;
        private List transitGatewayCidrBlocks;
        private String vpnEcmpSupport;
        public Builder() {}
        public Builder(GetTransitGatewayResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.amazonSideAsn = defaults.amazonSideAsn;
    	      this.arn = defaults.arn;
    	      this.associationDefaultRouteTableId = defaults.associationDefaultRouteTableId;
    	      this.autoAcceptSharedAttachments = defaults.autoAcceptSharedAttachments;
    	      this.defaultRouteTableAssociation = defaults.defaultRouteTableAssociation;
    	      this.defaultRouteTablePropagation = defaults.defaultRouteTablePropagation;
    	      this.description = defaults.description;
    	      this.dnsSupport = defaults.dnsSupport;
    	      this.filters = defaults.filters;
    	      this.id = defaults.id;
    	      this.multicastSupport = defaults.multicastSupport;
    	      this.ownerId = defaults.ownerId;
    	      this.propagationDefaultRouteTableId = defaults.propagationDefaultRouteTableId;
    	      this.securityGroupReferencingSupport = defaults.securityGroupReferencingSupport;
    	      this.tags = defaults.tags;
    	      this.transitGatewayCidrBlocks = defaults.transitGatewayCidrBlocks;
    	      this.vpnEcmpSupport = defaults.vpnEcmpSupport;
        }

        @CustomType.Setter
        public Builder amazonSideAsn(Integer amazonSideAsn) {
            if (amazonSideAsn == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "amazonSideAsn");
            }
            this.amazonSideAsn = amazonSideAsn;
            return this;
        }
        @CustomType.Setter
        public Builder arn(String arn) {
            if (arn == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "arn");
            }
            this.arn = arn;
            return this;
        }
        @CustomType.Setter
        public Builder associationDefaultRouteTableId(String associationDefaultRouteTableId) {
            if (associationDefaultRouteTableId == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "associationDefaultRouteTableId");
            }
            this.associationDefaultRouteTableId = associationDefaultRouteTableId;
            return this;
        }
        @CustomType.Setter
        public Builder autoAcceptSharedAttachments(String autoAcceptSharedAttachments) {
            if (autoAcceptSharedAttachments == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "autoAcceptSharedAttachments");
            }
            this.autoAcceptSharedAttachments = autoAcceptSharedAttachments;
            return this;
        }
        @CustomType.Setter
        public Builder defaultRouteTableAssociation(String defaultRouteTableAssociation) {
            if (defaultRouteTableAssociation == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "defaultRouteTableAssociation");
            }
            this.defaultRouteTableAssociation = defaultRouteTableAssociation;
            return this;
        }
        @CustomType.Setter
        public Builder defaultRouteTablePropagation(String defaultRouteTablePropagation) {
            if (defaultRouteTablePropagation == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "defaultRouteTablePropagation");
            }
            this.defaultRouteTablePropagation = defaultRouteTablePropagation;
            return this;
        }
        @CustomType.Setter
        public Builder description(String description) {
            if (description == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "description");
            }
            this.description = description;
            return this;
        }
        @CustomType.Setter
        public Builder dnsSupport(String dnsSupport) {
            if (dnsSupport == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "dnsSupport");
            }
            this.dnsSupport = dnsSupport;
            return this;
        }
        @CustomType.Setter
        public Builder filters(@Nullable List filters) {

            this.filters = filters;
            return this;
        }
        public Builder filters(GetTransitGatewayFilter... filters) {
            return filters(List.of(filters));
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder multicastSupport(String multicastSupport) {
            if (multicastSupport == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "multicastSupport");
            }
            this.multicastSupport = multicastSupport;
            return this;
        }
        @CustomType.Setter
        public Builder ownerId(String ownerId) {
            if (ownerId == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "ownerId");
            }
            this.ownerId = ownerId;
            return this;
        }
        @CustomType.Setter
        public Builder propagationDefaultRouteTableId(String propagationDefaultRouteTableId) {
            if (propagationDefaultRouteTableId == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "propagationDefaultRouteTableId");
            }
            this.propagationDefaultRouteTableId = propagationDefaultRouteTableId;
            return this;
        }
        @CustomType.Setter
        public Builder securityGroupReferencingSupport(String securityGroupReferencingSupport) {
            if (securityGroupReferencingSupport == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "securityGroupReferencingSupport");
            }
            this.securityGroupReferencingSupport = securityGroupReferencingSupport;
            return this;
        }
        @CustomType.Setter
        public Builder tags(Map tags) {
            if (tags == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "tags");
            }
            this.tags = tags;
            return this;
        }
        @CustomType.Setter
        public Builder transitGatewayCidrBlocks(List transitGatewayCidrBlocks) {
            if (transitGatewayCidrBlocks == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "transitGatewayCidrBlocks");
            }
            this.transitGatewayCidrBlocks = transitGatewayCidrBlocks;
            return this;
        }
        public Builder transitGatewayCidrBlocks(String... transitGatewayCidrBlocks) {
            return transitGatewayCidrBlocks(List.of(transitGatewayCidrBlocks));
        }
        @CustomType.Setter
        public Builder vpnEcmpSupport(String vpnEcmpSupport) {
            if (vpnEcmpSupport == null) {
              throw new MissingRequiredPropertyException("GetTransitGatewayResult", "vpnEcmpSupport");
            }
            this.vpnEcmpSupport = vpnEcmpSupport;
            return this;
        }
        public GetTransitGatewayResult build() {
            final var _resultValue = new GetTransitGatewayResult();
            _resultValue.amazonSideAsn = amazonSideAsn;
            _resultValue.arn = arn;
            _resultValue.associationDefaultRouteTableId = associationDefaultRouteTableId;
            _resultValue.autoAcceptSharedAttachments = autoAcceptSharedAttachments;
            _resultValue.defaultRouteTableAssociation = defaultRouteTableAssociation;
            _resultValue.defaultRouteTablePropagation = defaultRouteTablePropagation;
            _resultValue.description = description;
            _resultValue.dnsSupport = dnsSupport;
            _resultValue.filters = filters;
            _resultValue.id = id;
            _resultValue.multicastSupport = multicastSupport;
            _resultValue.ownerId = ownerId;
            _resultValue.propagationDefaultRouteTableId = propagationDefaultRouteTableId;
            _resultValue.securityGroupReferencingSupport = securityGroupReferencingSupport;
            _resultValue.tags = tags;
            _resultValue.transitGatewayCidrBlocks = transitGatewayCidrBlocks;
            _resultValue.vpnEcmpSupport = vpnEcmpSupport;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy