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

com.pulumi.azurenative.deviceupdate.outputs.RemotePrivateEndpointResponse 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.deviceupdate.outputs;

import com.pulumi.azurenative.deviceupdate.outputs.ConnectionDetailsResponse;
import com.pulumi.azurenative.deviceupdate.outputs.PrivateLinkServiceConnectionResponse;
import com.pulumi.azurenative.deviceupdate.outputs.PrivateLinkServiceProxyResponse;
import com.pulumi.core.annotations.CustomType;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class RemotePrivateEndpointResponse {
    /**
     * @return List of connection details.
     * 
     */
    private @Nullable List connectionDetails;
    /**
     * @return Remote endpoint resource ID.
     * 
     */
    private @Nullable String id;
    /**
     * @return Original resource ID needed by Microsoft.Network.
     * 
     */
    private @Nullable String immutableResourceId;
    /**
     * @return Original subscription ID needed by Microsoft.Network.
     * 
     */
    private @Nullable String immutableSubscriptionId;
    /**
     * @return ARM location of the remote private endpoint.
     * 
     */
    private @Nullable String location;
    /**
     * @return List of private link service connections that need manual approval.
     * 
     */
    private @Nullable List manualPrivateLinkServiceConnections;
    /**
     * @return List of automatically approved private link service connections.
     * 
     */
    private @Nullable List privateLinkServiceConnections;
    /**
     * @return List of private link service proxies.
     * 
     */
    private @Nullable List privateLinkServiceProxies;
    /**
     * @return Virtual network traffic tag.
     * 
     */
    private @Nullable String vnetTrafficTag;

    private RemotePrivateEndpointResponse() {}
    /**
     * @return List of connection details.
     * 
     */
    public List connectionDetails() {
        return this.connectionDetails == null ? List.of() : this.connectionDetails;
    }
    /**
     * @return Remote endpoint resource ID.
     * 
     */
    public Optional id() {
        return Optional.ofNullable(this.id);
    }
    /**
     * @return Original resource ID needed by Microsoft.Network.
     * 
     */
    public Optional immutableResourceId() {
        return Optional.ofNullable(this.immutableResourceId);
    }
    /**
     * @return Original subscription ID needed by Microsoft.Network.
     * 
     */
    public Optional immutableSubscriptionId() {
        return Optional.ofNullable(this.immutableSubscriptionId);
    }
    /**
     * @return ARM location of the remote private endpoint.
     * 
     */
    public Optional location() {
        return Optional.ofNullable(this.location);
    }
    /**
     * @return List of private link service connections that need manual approval.
     * 
     */
    public List manualPrivateLinkServiceConnections() {
        return this.manualPrivateLinkServiceConnections == null ? List.of() : this.manualPrivateLinkServiceConnections;
    }
    /**
     * @return List of automatically approved private link service connections.
     * 
     */
    public List privateLinkServiceConnections() {
        return this.privateLinkServiceConnections == null ? List.of() : this.privateLinkServiceConnections;
    }
    /**
     * @return List of private link service proxies.
     * 
     */
    public List privateLinkServiceProxies() {
        return this.privateLinkServiceProxies == null ? List.of() : this.privateLinkServiceProxies;
    }
    /**
     * @return Virtual network traffic tag.
     * 
     */
    public Optional vnetTrafficTag() {
        return Optional.ofNullable(this.vnetTrafficTag);
    }

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

    public static Builder builder(RemotePrivateEndpointResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List connectionDetails;
        private @Nullable String id;
        private @Nullable String immutableResourceId;
        private @Nullable String immutableSubscriptionId;
        private @Nullable String location;
        private @Nullable List manualPrivateLinkServiceConnections;
        private @Nullable List privateLinkServiceConnections;
        private @Nullable List privateLinkServiceProxies;
        private @Nullable String vnetTrafficTag;
        public Builder() {}
        public Builder(RemotePrivateEndpointResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.connectionDetails = defaults.connectionDetails;
    	      this.id = defaults.id;
    	      this.immutableResourceId = defaults.immutableResourceId;
    	      this.immutableSubscriptionId = defaults.immutableSubscriptionId;
    	      this.location = defaults.location;
    	      this.manualPrivateLinkServiceConnections = defaults.manualPrivateLinkServiceConnections;
    	      this.privateLinkServiceConnections = defaults.privateLinkServiceConnections;
    	      this.privateLinkServiceProxies = defaults.privateLinkServiceProxies;
    	      this.vnetTrafficTag = defaults.vnetTrafficTag;
        }

        @CustomType.Setter
        public Builder connectionDetails(@Nullable List connectionDetails) {

            this.connectionDetails = connectionDetails;
            return this;
        }
        public Builder connectionDetails(ConnectionDetailsResponse... connectionDetails) {
            return connectionDetails(List.of(connectionDetails));
        }
        @CustomType.Setter
        public Builder id(@Nullable String id) {

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

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

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

            this.location = location;
            return this;
        }
        @CustomType.Setter
        public Builder manualPrivateLinkServiceConnections(@Nullable List manualPrivateLinkServiceConnections) {

            this.manualPrivateLinkServiceConnections = manualPrivateLinkServiceConnections;
            return this;
        }
        public Builder manualPrivateLinkServiceConnections(PrivateLinkServiceConnectionResponse... manualPrivateLinkServiceConnections) {
            return manualPrivateLinkServiceConnections(List.of(manualPrivateLinkServiceConnections));
        }
        @CustomType.Setter
        public Builder privateLinkServiceConnections(@Nullable List privateLinkServiceConnections) {

            this.privateLinkServiceConnections = privateLinkServiceConnections;
            return this;
        }
        public Builder privateLinkServiceConnections(PrivateLinkServiceConnectionResponse... privateLinkServiceConnections) {
            return privateLinkServiceConnections(List.of(privateLinkServiceConnections));
        }
        @CustomType.Setter
        public Builder privateLinkServiceProxies(@Nullable List privateLinkServiceProxies) {

            this.privateLinkServiceProxies = privateLinkServiceProxies;
            return this;
        }
        public Builder privateLinkServiceProxies(PrivateLinkServiceProxyResponse... privateLinkServiceProxies) {
            return privateLinkServiceProxies(List.of(privateLinkServiceProxies));
        }
        @CustomType.Setter
        public Builder vnetTrafficTag(@Nullable String vnetTrafficTag) {

            this.vnetTrafficTag = vnetTrafficTag;
            return this;
        }
        public RemotePrivateEndpointResponse build() {
            final var _resultValue = new RemotePrivateEndpointResponse();
            _resultValue.connectionDetails = connectionDetails;
            _resultValue.id = id;
            _resultValue.immutableResourceId = immutableResourceId;
            _resultValue.immutableSubscriptionId = immutableSubscriptionId;
            _resultValue.location = location;
            _resultValue.manualPrivateLinkServiceConnections = manualPrivateLinkServiceConnections;
            _resultValue.privateLinkServiceConnections = privateLinkServiceConnections;
            _resultValue.privateLinkServiceProxies = privateLinkServiceProxies;
            _resultValue.vnetTrafficTag = vnetTrafficTag;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy