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

com.pulumi.azure.appplatform.inputs.SpringCloudAppState 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.appplatform.inputs;

import com.pulumi.azure.appplatform.inputs.SpringCloudAppCustomPersistentDiskArgs;
import com.pulumi.azure.appplatform.inputs.SpringCloudAppIdentityArgs;
import com.pulumi.azure.appplatform.inputs.SpringCloudAppIngressSettingsArgs;
import com.pulumi.azure.appplatform.inputs.SpringCloudAppPersistentDiskArgs;
import com.pulumi.core.Output;
import com.pulumi.core.annotations.Import;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;


public final class SpringCloudAppState extends com.pulumi.resources.ResourceArgs {

    public static final SpringCloudAppState Empty = new SpringCloudAppState();

    /**
     * A JSON object that contains the addon configurations of the Spring Cloud Service.
     * 
     */
    @Import(name="addonJson")
    private @Nullable Output addonJson;

    /**
     * @return A JSON object that contains the addon configurations of the Spring Cloud Service.
     * 
     */
    public Optional> addonJson() {
        return Optional.ofNullable(this.addonJson);
    }

    /**
     * A `custom_persistent_disk` block as defined below.
     * 
     */
    @Import(name="customPersistentDisks")
    private @Nullable Output> customPersistentDisks;

    /**
     * @return A `custom_persistent_disk` block as defined below.
     * 
     */
    public Optional>> customPersistentDisks() {
        return Optional.ofNullable(this.customPersistentDisks);
    }

    /**
     * The Fully Qualified DNS Name of the Spring Application in the service.
     * 
     */
    @Import(name="fqdn")
    private @Nullable Output fqdn;

    /**
     * @return The Fully Qualified DNS Name of the Spring Application in the service.
     * 
     */
    public Optional> fqdn() {
        return Optional.ofNullable(this.fqdn);
    }

    /**
     * Is only HTTPS allowed? Defaults to `false`.
     * 
     */
    @Import(name="httpsOnly")
    private @Nullable Output httpsOnly;

    /**
     * @return Is only HTTPS allowed? Defaults to `false`.
     * 
     */
    public Optional> httpsOnly() {
        return Optional.ofNullable(this.httpsOnly);
    }

    /**
     * An `identity` block as defined below.
     * 
     */
    @Import(name="identity")
    private @Nullable Output identity;

    /**
     * @return An `identity` block as defined below.
     * 
     */
    public Optional> identity() {
        return Optional.ofNullable(this.identity);
    }

    /**
     * An `ingress_settings` block as defined below.
     * 
     */
    @Import(name="ingressSettings")
    private @Nullable Output ingressSettings;

    /**
     * @return An `ingress_settings` block as defined below.
     * 
     */
    public Optional> ingressSettings() {
        return Optional.ofNullable(this.ingressSettings);
    }

    /**
     * Does the Spring Cloud Application have public endpoint? Defaults to `false`.
     * 
     */
    @Import(name="isPublic")
    private @Nullable Output isPublic;

    /**
     * @return Does the Spring Cloud Application have public endpoint? Defaults to `false`.
     * 
     */
    public Optional> isPublic() {
        return Optional.ofNullable(this.isPublic);
    }

    /**
     * Specifies the name of the Spring Cloud Application. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="name")
    private @Nullable Output name;

    /**
     * @return Specifies the name of the Spring Cloud Application. Changing this forces a new resource to be created.
     * 
     */
    public Optional> name() {
        return Optional.ofNullable(this.name);
    }

    /**
     * An `persistent_disk` block as defined below.
     * 
     */
    @Import(name="persistentDisk")
    private @Nullable Output persistentDisk;

    /**
     * @return An `persistent_disk` block as defined below.
     * 
     */
    public Optional> persistentDisk() {
        return Optional.ofNullable(this.persistentDisk);
    }

    /**
     * Should the App in vnet injection instance exposes endpoint which could be accessed from Internet?
     * 
     */
    @Import(name="publicEndpointEnabled")
    private @Nullable Output publicEndpointEnabled;

    /**
     * @return Should the App in vnet injection instance exposes endpoint which could be accessed from Internet?
     * 
     */
    public Optional> publicEndpointEnabled() {
        return Optional.ofNullable(this.publicEndpointEnabled);
    }

    /**
     * Specifies the name of the resource group in which to create the Spring Cloud Application. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="resourceGroupName")
    private @Nullable Output resourceGroupName;

    /**
     * @return Specifies the name of the resource group in which to create the Spring Cloud Application. Changing this forces a new resource to be created.
     * 
     */
    public Optional> resourceGroupName() {
        return Optional.ofNullable(this.resourceGroupName);
    }

    /**
     * Specifies the name of the Spring Cloud Service resource. Changing this forces a new resource to be created.
     * 
     */
    @Import(name="serviceName")
    private @Nullable Output serviceName;

    /**
     * @return Specifies the name of the Spring Cloud Service resource. Changing this forces a new resource to be created.
     * 
     */
    public Optional> serviceName() {
        return Optional.ofNullable(this.serviceName);
    }

    /**
     * Is End to End TLS Enabled? Defaults to `false`.
     * 
     */
    @Import(name="tlsEnabled")
    private @Nullable Output tlsEnabled;

    /**
     * @return Is End to End TLS Enabled? Defaults to `false`.
     * 
     */
    public Optional> tlsEnabled() {
        return Optional.ofNullable(this.tlsEnabled);
    }

    /**
     * The public endpoint of the Spring Cloud Application.
     * 
     */
    @Import(name="url")
    private @Nullable Output url;

    /**
     * @return The public endpoint of the Spring Cloud Application.
     * 
     */
    public Optional> url() {
        return Optional.ofNullable(this.url);
    }

    private SpringCloudAppState() {}

    private SpringCloudAppState(SpringCloudAppState $) {
        this.addonJson = $.addonJson;
        this.customPersistentDisks = $.customPersistentDisks;
        this.fqdn = $.fqdn;
        this.httpsOnly = $.httpsOnly;
        this.identity = $.identity;
        this.ingressSettings = $.ingressSettings;
        this.isPublic = $.isPublic;
        this.name = $.name;
        this.persistentDisk = $.persistentDisk;
        this.publicEndpointEnabled = $.publicEndpointEnabled;
        this.resourceGroupName = $.resourceGroupName;
        this.serviceName = $.serviceName;
        this.tlsEnabled = $.tlsEnabled;
        this.url = $.url;
    }

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

    public static final class Builder {
        private SpringCloudAppState $;

        public Builder() {
            $ = new SpringCloudAppState();
        }

        public Builder(SpringCloudAppState defaults) {
            $ = new SpringCloudAppState(Objects.requireNonNull(defaults));
        }

        /**
         * @param addonJson A JSON object that contains the addon configurations of the Spring Cloud Service.
         * 
         * @return builder
         * 
         */
        public Builder addonJson(@Nullable Output addonJson) {
            $.addonJson = addonJson;
            return this;
        }

        /**
         * @param addonJson A JSON object that contains the addon configurations of the Spring Cloud Service.
         * 
         * @return builder
         * 
         */
        public Builder addonJson(String addonJson) {
            return addonJson(Output.of(addonJson));
        }

        /**
         * @param customPersistentDisks A `custom_persistent_disk` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder customPersistentDisks(@Nullable Output> customPersistentDisks) {
            $.customPersistentDisks = customPersistentDisks;
            return this;
        }

        /**
         * @param customPersistentDisks A `custom_persistent_disk` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder customPersistentDisks(List customPersistentDisks) {
            return customPersistentDisks(Output.of(customPersistentDisks));
        }

        /**
         * @param customPersistentDisks A `custom_persistent_disk` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder customPersistentDisks(SpringCloudAppCustomPersistentDiskArgs... customPersistentDisks) {
            return customPersistentDisks(List.of(customPersistentDisks));
        }

        /**
         * @param fqdn The Fully Qualified DNS Name of the Spring Application in the service.
         * 
         * @return builder
         * 
         */
        public Builder fqdn(@Nullable Output fqdn) {
            $.fqdn = fqdn;
            return this;
        }

        /**
         * @param fqdn The Fully Qualified DNS Name of the Spring Application in the service.
         * 
         * @return builder
         * 
         */
        public Builder fqdn(String fqdn) {
            return fqdn(Output.of(fqdn));
        }

        /**
         * @param httpsOnly Is only HTTPS allowed? Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder httpsOnly(@Nullable Output httpsOnly) {
            $.httpsOnly = httpsOnly;
            return this;
        }

        /**
         * @param httpsOnly Is only HTTPS allowed? Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder httpsOnly(Boolean httpsOnly) {
            return httpsOnly(Output.of(httpsOnly));
        }

        /**
         * @param identity An `identity` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder identity(@Nullable Output identity) {
            $.identity = identity;
            return this;
        }

        /**
         * @param identity An `identity` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder identity(SpringCloudAppIdentityArgs identity) {
            return identity(Output.of(identity));
        }

        /**
         * @param ingressSettings An `ingress_settings` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder ingressSettings(@Nullable Output ingressSettings) {
            $.ingressSettings = ingressSettings;
            return this;
        }

        /**
         * @param ingressSettings An `ingress_settings` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder ingressSettings(SpringCloudAppIngressSettingsArgs ingressSettings) {
            return ingressSettings(Output.of(ingressSettings));
        }

        /**
         * @param isPublic Does the Spring Cloud Application have public endpoint? Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder isPublic(@Nullable Output isPublic) {
            $.isPublic = isPublic;
            return this;
        }

        /**
         * @param isPublic Does the Spring Cloud Application have public endpoint? Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder isPublic(Boolean isPublic) {
            return isPublic(Output.of(isPublic));
        }

        /**
         * @param name Specifies the name of the Spring Cloud Application. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder name(@Nullable Output name) {
            $.name = name;
            return this;
        }

        /**
         * @param name Specifies the name of the Spring Cloud Application. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder name(String name) {
            return name(Output.of(name));
        }

        /**
         * @param persistentDisk An `persistent_disk` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder persistentDisk(@Nullable Output persistentDisk) {
            $.persistentDisk = persistentDisk;
            return this;
        }

        /**
         * @param persistentDisk An `persistent_disk` block as defined below.
         * 
         * @return builder
         * 
         */
        public Builder persistentDisk(SpringCloudAppPersistentDiskArgs persistentDisk) {
            return persistentDisk(Output.of(persistentDisk));
        }

        /**
         * @param publicEndpointEnabled Should the App in vnet injection instance exposes endpoint which could be accessed from Internet?
         * 
         * @return builder
         * 
         */
        public Builder publicEndpointEnabled(@Nullable Output publicEndpointEnabled) {
            $.publicEndpointEnabled = publicEndpointEnabled;
            return this;
        }

        /**
         * @param publicEndpointEnabled Should the App in vnet injection instance exposes endpoint which could be accessed from Internet?
         * 
         * @return builder
         * 
         */
        public Builder publicEndpointEnabled(Boolean publicEndpointEnabled) {
            return publicEndpointEnabled(Output.of(publicEndpointEnabled));
        }

        /**
         * @param resourceGroupName Specifies the name of the resource group in which to create the Spring Cloud Application. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(@Nullable Output resourceGroupName) {
            $.resourceGroupName = resourceGroupName;
            return this;
        }

        /**
         * @param resourceGroupName Specifies the name of the resource group in which to create the Spring Cloud Application. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder resourceGroupName(String resourceGroupName) {
            return resourceGroupName(Output.of(resourceGroupName));
        }

        /**
         * @param serviceName Specifies the name of the Spring Cloud Service resource. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder serviceName(@Nullable Output serviceName) {
            $.serviceName = serviceName;
            return this;
        }

        /**
         * @param serviceName Specifies the name of the Spring Cloud Service resource. Changing this forces a new resource to be created.
         * 
         * @return builder
         * 
         */
        public Builder serviceName(String serviceName) {
            return serviceName(Output.of(serviceName));
        }

        /**
         * @param tlsEnabled Is End to End TLS Enabled? Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder tlsEnabled(@Nullable Output tlsEnabled) {
            $.tlsEnabled = tlsEnabled;
            return this;
        }

        /**
         * @param tlsEnabled Is End to End TLS Enabled? Defaults to `false`.
         * 
         * @return builder
         * 
         */
        public Builder tlsEnabled(Boolean tlsEnabled) {
            return tlsEnabled(Output.of(tlsEnabled));
        }

        /**
         * @param url The public endpoint of the Spring Cloud Application.
         * 
         * @return builder
         * 
         */
        public Builder url(@Nullable Output url) {
            $.url = url;
            return this;
        }

        /**
         * @param url The public endpoint of the Spring Cloud Application.
         * 
         * @return builder
         * 
         */
        public Builder url(String url) {
            return url(Output.of(url));
        }

        public SpringCloudAppState build() {
            return $;
        }
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy