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

com.pulumi.azurenative.peering.outputs.DirectConnectionResponse 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.azurenative.peering.outputs;

import com.pulumi.azurenative.peering.outputs.BgpSessionResponse;
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.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class DirectConnectionResponse {
    /**
     * @return The bandwidth of the connection.
     * 
     */
    private @Nullable Integer bandwidthInMbps;
    /**
     * @return The BGP session associated with the connection.
     * 
     */
    private @Nullable BgpSessionResponse bgpSession;
    /**
     * @return The unique identifier (GUID) for the connection.
     * 
     */
    private @Nullable String connectionIdentifier;
    /**
     * @return The state of the connection.
     * 
     */
    private String connectionState;
    /**
     * @return The error message related to the connection state, if any.
     * 
     */
    private String errorMessage;
    /**
     * @return The ID used within Microsoft's peering provisioning system to track the connection
     * 
     */
    private String microsoftTrackingId;
    /**
     * @return The PeeringDB.com ID of the facility at which the connection has to be set up.
     * 
     */
    private @Nullable Integer peeringDBFacilityId;
    /**
     * @return The bandwidth that is actually provisioned.
     * 
     */
    private Integer provisionedBandwidthInMbps;
    /**
     * @return The field indicating if Microsoft provides session ip addresses.
     * 
     */
    private @Nullable String sessionAddressProvider;
    /**
     * @return The flag that indicates whether or not the connection is used for peering service.
     * 
     */
    private @Nullable Boolean useForPeeringService;

    private DirectConnectionResponse() {}
    /**
     * @return The bandwidth of the connection.
     * 
     */
    public Optional bandwidthInMbps() {
        return Optional.ofNullable(this.bandwidthInMbps);
    }
    /**
     * @return The BGP session associated with the connection.
     * 
     */
    public Optional bgpSession() {
        return Optional.ofNullable(this.bgpSession);
    }
    /**
     * @return The unique identifier (GUID) for the connection.
     * 
     */
    public Optional connectionIdentifier() {
        return Optional.ofNullable(this.connectionIdentifier);
    }
    /**
     * @return The state of the connection.
     * 
     */
    public String connectionState() {
        return this.connectionState;
    }
    /**
     * @return The error message related to the connection state, if any.
     * 
     */
    public String errorMessage() {
        return this.errorMessage;
    }
    /**
     * @return The ID used within Microsoft's peering provisioning system to track the connection
     * 
     */
    public String microsoftTrackingId() {
        return this.microsoftTrackingId;
    }
    /**
     * @return The PeeringDB.com ID of the facility at which the connection has to be set up.
     * 
     */
    public Optional peeringDBFacilityId() {
        return Optional.ofNullable(this.peeringDBFacilityId);
    }
    /**
     * @return The bandwidth that is actually provisioned.
     * 
     */
    public Integer provisionedBandwidthInMbps() {
        return this.provisionedBandwidthInMbps;
    }
    /**
     * @return The field indicating if Microsoft provides session ip addresses.
     * 
     */
    public Optional sessionAddressProvider() {
        return Optional.ofNullable(this.sessionAddressProvider);
    }
    /**
     * @return The flag that indicates whether or not the connection is used for peering service.
     * 
     */
    public Optional useForPeeringService() {
        return Optional.ofNullable(this.useForPeeringService);
    }

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

    public static Builder builder(DirectConnectionResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Integer bandwidthInMbps;
        private @Nullable BgpSessionResponse bgpSession;
        private @Nullable String connectionIdentifier;
        private String connectionState;
        private String errorMessage;
        private String microsoftTrackingId;
        private @Nullable Integer peeringDBFacilityId;
        private Integer provisionedBandwidthInMbps;
        private @Nullable String sessionAddressProvider;
        private @Nullable Boolean useForPeeringService;
        public Builder() {}
        public Builder(DirectConnectionResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.bandwidthInMbps = defaults.bandwidthInMbps;
    	      this.bgpSession = defaults.bgpSession;
    	      this.connectionIdentifier = defaults.connectionIdentifier;
    	      this.connectionState = defaults.connectionState;
    	      this.errorMessage = defaults.errorMessage;
    	      this.microsoftTrackingId = defaults.microsoftTrackingId;
    	      this.peeringDBFacilityId = defaults.peeringDBFacilityId;
    	      this.provisionedBandwidthInMbps = defaults.provisionedBandwidthInMbps;
    	      this.sessionAddressProvider = defaults.sessionAddressProvider;
    	      this.useForPeeringService = defaults.useForPeeringService;
        }

        @CustomType.Setter
        public Builder bandwidthInMbps(@Nullable Integer bandwidthInMbps) {

            this.bandwidthInMbps = bandwidthInMbps;
            return this;
        }
        @CustomType.Setter
        public Builder bgpSession(@Nullable BgpSessionResponse bgpSession) {

            this.bgpSession = bgpSession;
            return this;
        }
        @CustomType.Setter
        public Builder connectionIdentifier(@Nullable String connectionIdentifier) {

            this.connectionIdentifier = connectionIdentifier;
            return this;
        }
        @CustomType.Setter
        public Builder connectionState(String connectionState) {
            if (connectionState == null) {
              throw new MissingRequiredPropertyException("DirectConnectionResponse", "connectionState");
            }
            this.connectionState = connectionState;
            return this;
        }
        @CustomType.Setter
        public Builder errorMessage(String errorMessage) {
            if (errorMessage == null) {
              throw new MissingRequiredPropertyException("DirectConnectionResponse", "errorMessage");
            }
            this.errorMessage = errorMessage;
            return this;
        }
        @CustomType.Setter
        public Builder microsoftTrackingId(String microsoftTrackingId) {
            if (microsoftTrackingId == null) {
              throw new MissingRequiredPropertyException("DirectConnectionResponse", "microsoftTrackingId");
            }
            this.microsoftTrackingId = microsoftTrackingId;
            return this;
        }
        @CustomType.Setter
        public Builder peeringDBFacilityId(@Nullable Integer peeringDBFacilityId) {

            this.peeringDBFacilityId = peeringDBFacilityId;
            return this;
        }
        @CustomType.Setter
        public Builder provisionedBandwidthInMbps(Integer provisionedBandwidthInMbps) {
            if (provisionedBandwidthInMbps == null) {
              throw new MissingRequiredPropertyException("DirectConnectionResponse", "provisionedBandwidthInMbps");
            }
            this.provisionedBandwidthInMbps = provisionedBandwidthInMbps;
            return this;
        }
        @CustomType.Setter
        public Builder sessionAddressProvider(@Nullable String sessionAddressProvider) {

            this.sessionAddressProvider = sessionAddressProvider;
            return this;
        }
        @CustomType.Setter
        public Builder useForPeeringService(@Nullable Boolean useForPeeringService) {

            this.useForPeeringService = useForPeeringService;
            return this;
        }
        public DirectConnectionResponse build() {
            final var _resultValue = new DirectConnectionResponse();
            _resultValue.bandwidthInMbps = bandwidthInMbps;
            _resultValue.bgpSession = bgpSession;
            _resultValue.connectionIdentifier = connectionIdentifier;
            _resultValue.connectionState = connectionState;
            _resultValue.errorMessage = errorMessage;
            _resultValue.microsoftTrackingId = microsoftTrackingId;
            _resultValue.peeringDBFacilityId = peeringDBFacilityId;
            _resultValue.provisionedBandwidthInMbps = provisionedBandwidthInMbps;
            _resultValue.sessionAddressProvider = sessionAddressProvider;
            _resultValue.useForPeeringService = useForPeeringService;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy