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

com.pulumi.azurenative.web.outputs.GetStaticSiteResult 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.web.outputs;

import com.pulumi.azurenative.web.outputs.DatabaseConnectionOverviewResponse;
import com.pulumi.azurenative.web.outputs.ManagedServiceIdentityResponse;
import com.pulumi.azurenative.web.outputs.ResponseMessageEnvelopeRemotePrivateEndpointConnectionResponse;
import com.pulumi.azurenative.web.outputs.SkuDescriptionResponse;
import com.pulumi.azurenative.web.outputs.StaticSiteBuildPropertiesResponse;
import com.pulumi.azurenative.web.outputs.StaticSiteLinkedBackendResponse;
import com.pulumi.azurenative.web.outputs.StaticSiteTemplateOptionsResponse;
import com.pulumi.azurenative.web.outputs.StaticSiteUserProvidedFunctionAppResponse;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Boolean;
import java.lang.String;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.Optional;
import javax.annotation.Nullable;

@CustomType
public final class GetStaticSiteResult {
    /**
     * @return <code>false</code> if config file is locked for this static web app; otherwise, <code>true</code>.
     * 
     */
    private @Nullable Boolean allowConfigFileUpdates;
    /**
     * @return The target branch in the repository.
     * 
     */
    private @Nullable String branch;
    /**
     * @return Build properties to configure on the repository.
     * 
     */
    private @Nullable StaticSiteBuildPropertiesResponse buildProperties;
    /**
     * @return The content distribution endpoint for the static site.
     * 
     */
    private String contentDistributionEndpoint;
    /**
     * @return The custom domains associated with this static site.
     * 
     */
    private List customDomains;
    /**
     * @return Database connections for the static site
     * 
     */
    private List databaseConnections;
    /**
     * @return The default autogenerated hostname for the static site.
     * 
     */
    private String defaultHostname;
    /**
     * @return State indicating the status of the enterprise grade CDN serving traffic to the static web app.
     * 
     */
    private @Nullable String enterpriseGradeCdnStatus;
    /**
     * @return Resource Id.
     * 
     */
    private String id;
    /**
     * @return Managed service identity.
     * 
     */
    private @Nullable ManagedServiceIdentityResponse identity;
    /**
     * @return Identity to use for Key Vault Reference authentication.
     * 
     */
    private String keyVaultReferenceIdentity;
    /**
     * @return Kind of resource.
     * 
     */
    private @Nullable String kind;
    /**
     * @return Backends linked to the static side
     * 
     */
    private List linkedBackends;
    /**
     * @return Resource Location.
     * 
     */
    private String location;
    /**
     * @return Resource Name.
     * 
     */
    private String name;
    /**
     * @return Private endpoint connections
     * 
     */
    private List privateEndpointConnections;
    /**
     * @return The provider that submitted the last deployment to the primary environment of the static site.
     * 
     */
    private @Nullable String provider;
    /**
     * @return State indicating whether public traffic are allowed or not for a static web app. Allowed Values: 'Enabled', 'Disabled' or an empty string.
     * 
     */
    private @Nullable String publicNetworkAccess;
    /**
     * @return A user's github repository token. This is used to setup the Github Actions workflow file and API secrets.
     * 
     */
    private @Nullable String repositoryToken;
    /**
     * @return URL for the repository of the static site.
     * 
     */
    private @Nullable String repositoryUrl;
    /**
     * @return Description of a SKU for a scalable resource.
     * 
     */
    private @Nullable SkuDescriptionResponse sku;
    /**
     * @return State indicating whether staging environments are allowed or not allowed for a static web app.
     * 
     */
    private @Nullable String stagingEnvironmentPolicy;
    /**
     * @return Resource tags.
     * 
     */
    private @Nullable Map tags;
    /**
     * @return Template options for generating a new repository.
     * 
     */
    private @Nullable StaticSiteTemplateOptionsResponse templateProperties;
    /**
     * @return Resource type.
     * 
     */
    private String type;
    /**
     * @return User provided function apps registered with the static site
     * 
     */
    private List userProvidedFunctionApps;

    private GetStaticSiteResult() {}
    /**
     * @return <code>false</code> if config file is locked for this static web app; otherwise, <code>true</code>.
     * 
     */
    public Optional allowConfigFileUpdates() {
        return Optional.ofNullable(this.allowConfigFileUpdates);
    }
    /**
     * @return The target branch in the repository.
     * 
     */
    public Optional branch() {
        return Optional.ofNullable(this.branch);
    }
    /**
     * @return Build properties to configure on the repository.
     * 
     */
    public Optional buildProperties() {
        return Optional.ofNullable(this.buildProperties);
    }
    /**
     * @return The content distribution endpoint for the static site.
     * 
     */
    public String contentDistributionEndpoint() {
        return this.contentDistributionEndpoint;
    }
    /**
     * @return The custom domains associated with this static site.
     * 
     */
    public List customDomains() {
        return this.customDomains;
    }
    /**
     * @return Database connections for the static site
     * 
     */
    public List databaseConnections() {
        return this.databaseConnections;
    }
    /**
     * @return The default autogenerated hostname for the static site.
     * 
     */
    public String defaultHostname() {
        return this.defaultHostname;
    }
    /**
     * @return State indicating the status of the enterprise grade CDN serving traffic to the static web app.
     * 
     */
    public Optional enterpriseGradeCdnStatus() {
        return Optional.ofNullable(this.enterpriseGradeCdnStatus);
    }
    /**
     * @return Resource Id.
     * 
     */
    public String id() {
        return this.id;
    }
    /**
     * @return Managed service identity.
     * 
     */
    public Optional identity() {
        return Optional.ofNullable(this.identity);
    }
    /**
     * @return Identity to use for Key Vault Reference authentication.
     * 
     */
    public String keyVaultReferenceIdentity() {
        return this.keyVaultReferenceIdentity;
    }
    /**
     * @return Kind of resource.
     * 
     */
    public Optional kind() {
        return Optional.ofNullable(this.kind);
    }
    /**
     * @return Backends linked to the static side
     * 
     */
    public List linkedBackends() {
        return this.linkedBackends;
    }
    /**
     * @return Resource Location.
     * 
     */
    public String location() {
        return this.location;
    }
    /**
     * @return Resource Name.
     * 
     */
    public String name() {
        return this.name;
    }
    /**
     * @return Private endpoint connections
     * 
     */
    public List privateEndpointConnections() {
        return this.privateEndpointConnections;
    }
    /**
     * @return The provider that submitted the last deployment to the primary environment of the static site.
     * 
     */
    public Optional provider() {
        return Optional.ofNullable(this.provider);
    }
    /**
     * @return State indicating whether public traffic are allowed or not for a static web app. Allowed Values: 'Enabled', 'Disabled' or an empty string.
     * 
     */
    public Optional publicNetworkAccess() {
        return Optional.ofNullable(this.publicNetworkAccess);
    }
    /**
     * @return A user's github repository token. This is used to setup the Github Actions workflow file and API secrets.
     * 
     */
    public Optional repositoryToken() {
        return Optional.ofNullable(this.repositoryToken);
    }
    /**
     * @return URL for the repository of the static site.
     * 
     */
    public Optional repositoryUrl() {
        return Optional.ofNullable(this.repositoryUrl);
    }
    /**
     * @return Description of a SKU for a scalable resource.
     * 
     */
    public Optional sku() {
        return Optional.ofNullable(this.sku);
    }
    /**
     * @return State indicating whether staging environments are allowed or not allowed for a static web app.
     * 
     */
    public Optional stagingEnvironmentPolicy() {
        return Optional.ofNullable(this.stagingEnvironmentPolicy);
    }
    /**
     * @return Resource tags.
     * 
     */
    public Map tags() {
        return this.tags == null ? Map.of() : this.tags;
    }
    /**
     * @return Template options for generating a new repository.
     * 
     */
    public Optional templateProperties() {
        return Optional.ofNullable(this.templateProperties);
    }
    /**
     * @return Resource type.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return User provided function apps registered with the static site
     * 
     */
    public List userProvidedFunctionApps() {
        return this.userProvidedFunctionApps;
    }

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

    public static Builder builder(GetStaticSiteResult defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Boolean allowConfigFileUpdates;
        private @Nullable String branch;
        private @Nullable StaticSiteBuildPropertiesResponse buildProperties;
        private String contentDistributionEndpoint;
        private List customDomains;
        private List databaseConnections;
        private String defaultHostname;
        private @Nullable String enterpriseGradeCdnStatus;
        private String id;
        private @Nullable ManagedServiceIdentityResponse identity;
        private String keyVaultReferenceIdentity;
        private @Nullable String kind;
        private List linkedBackends;
        private String location;
        private String name;
        private List privateEndpointConnections;
        private @Nullable String provider;
        private @Nullable String publicNetworkAccess;
        private @Nullable String repositoryToken;
        private @Nullable String repositoryUrl;
        private @Nullable SkuDescriptionResponse sku;
        private @Nullable String stagingEnvironmentPolicy;
        private @Nullable Map tags;
        private @Nullable StaticSiteTemplateOptionsResponse templateProperties;
        private String type;
        private List userProvidedFunctionApps;
        public Builder() {}
        public Builder(GetStaticSiteResult defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.allowConfigFileUpdates = defaults.allowConfigFileUpdates;
    	      this.branch = defaults.branch;
    	      this.buildProperties = defaults.buildProperties;
    	      this.contentDistributionEndpoint = defaults.contentDistributionEndpoint;
    	      this.customDomains = defaults.customDomains;
    	      this.databaseConnections = defaults.databaseConnections;
    	      this.defaultHostname = defaults.defaultHostname;
    	      this.enterpriseGradeCdnStatus = defaults.enterpriseGradeCdnStatus;
    	      this.id = defaults.id;
    	      this.identity = defaults.identity;
    	      this.keyVaultReferenceIdentity = defaults.keyVaultReferenceIdentity;
    	      this.kind = defaults.kind;
    	      this.linkedBackends = defaults.linkedBackends;
    	      this.location = defaults.location;
    	      this.name = defaults.name;
    	      this.privateEndpointConnections = defaults.privateEndpointConnections;
    	      this.provider = defaults.provider;
    	      this.publicNetworkAccess = defaults.publicNetworkAccess;
    	      this.repositoryToken = defaults.repositoryToken;
    	      this.repositoryUrl = defaults.repositoryUrl;
    	      this.sku = defaults.sku;
    	      this.stagingEnvironmentPolicy = defaults.stagingEnvironmentPolicy;
    	      this.tags = defaults.tags;
    	      this.templateProperties = defaults.templateProperties;
    	      this.type = defaults.type;
    	      this.userProvidedFunctionApps = defaults.userProvidedFunctionApps;
        }

        @CustomType.Setter
        public Builder allowConfigFileUpdates(@Nullable Boolean allowConfigFileUpdates) {

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

            this.branch = branch;
            return this;
        }
        @CustomType.Setter
        public Builder buildProperties(@Nullable StaticSiteBuildPropertiesResponse buildProperties) {

            this.buildProperties = buildProperties;
            return this;
        }
        @CustomType.Setter
        public Builder contentDistributionEndpoint(String contentDistributionEndpoint) {
            if (contentDistributionEndpoint == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "contentDistributionEndpoint");
            }
            this.contentDistributionEndpoint = contentDistributionEndpoint;
            return this;
        }
        @CustomType.Setter
        public Builder customDomains(List customDomains) {
            if (customDomains == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "customDomains");
            }
            this.customDomains = customDomains;
            return this;
        }
        public Builder customDomains(String... customDomains) {
            return customDomains(List.of(customDomains));
        }
        @CustomType.Setter
        public Builder databaseConnections(List databaseConnections) {
            if (databaseConnections == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "databaseConnections");
            }
            this.databaseConnections = databaseConnections;
            return this;
        }
        public Builder databaseConnections(DatabaseConnectionOverviewResponse... databaseConnections) {
            return databaseConnections(List.of(databaseConnections));
        }
        @CustomType.Setter
        public Builder defaultHostname(String defaultHostname) {
            if (defaultHostname == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "defaultHostname");
            }
            this.defaultHostname = defaultHostname;
            return this;
        }
        @CustomType.Setter
        public Builder enterpriseGradeCdnStatus(@Nullable String enterpriseGradeCdnStatus) {

            this.enterpriseGradeCdnStatus = enterpriseGradeCdnStatus;
            return this;
        }
        @CustomType.Setter
        public Builder id(String id) {
            if (id == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "id");
            }
            this.id = id;
            return this;
        }
        @CustomType.Setter
        public Builder identity(@Nullable ManagedServiceIdentityResponse identity) {

            this.identity = identity;
            return this;
        }
        @CustomType.Setter
        public Builder keyVaultReferenceIdentity(String keyVaultReferenceIdentity) {
            if (keyVaultReferenceIdentity == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "keyVaultReferenceIdentity");
            }
            this.keyVaultReferenceIdentity = keyVaultReferenceIdentity;
            return this;
        }
        @CustomType.Setter
        public Builder kind(@Nullable String kind) {

            this.kind = kind;
            return this;
        }
        @CustomType.Setter
        public Builder linkedBackends(List linkedBackends) {
            if (linkedBackends == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "linkedBackends");
            }
            this.linkedBackends = linkedBackends;
            return this;
        }
        public Builder linkedBackends(StaticSiteLinkedBackendResponse... linkedBackends) {
            return linkedBackends(List.of(linkedBackends));
        }
        @CustomType.Setter
        public Builder location(String location) {
            if (location == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "location");
            }
            this.location = location;
            return this;
        }
        @CustomType.Setter
        public Builder name(String name) {
            if (name == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "name");
            }
            this.name = name;
            return this;
        }
        @CustomType.Setter
        public Builder privateEndpointConnections(List privateEndpointConnections) {
            if (privateEndpointConnections == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "privateEndpointConnections");
            }
            this.privateEndpointConnections = privateEndpointConnections;
            return this;
        }
        public Builder privateEndpointConnections(ResponseMessageEnvelopeRemotePrivateEndpointConnectionResponse... privateEndpointConnections) {
            return privateEndpointConnections(List.of(privateEndpointConnections));
        }
        @CustomType.Setter
        public Builder provider(@Nullable String provider) {

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

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

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

            this.repositoryUrl = repositoryUrl;
            return this;
        }
        @CustomType.Setter
        public Builder sku(@Nullable SkuDescriptionResponse sku) {

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

            this.stagingEnvironmentPolicy = stagingEnvironmentPolicy;
            return this;
        }
        @CustomType.Setter
        public Builder tags(@Nullable Map tags) {

            this.tags = tags;
            return this;
        }
        @CustomType.Setter
        public Builder templateProperties(@Nullable StaticSiteTemplateOptionsResponse templateProperties) {

            this.templateProperties = templateProperties;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder userProvidedFunctionApps(List userProvidedFunctionApps) {
            if (userProvidedFunctionApps == null) {
              throw new MissingRequiredPropertyException("GetStaticSiteResult", "userProvidedFunctionApps");
            }
            this.userProvidedFunctionApps = userProvidedFunctionApps;
            return this;
        }
        public Builder userProvidedFunctionApps(StaticSiteUserProvidedFunctionAppResponse... userProvidedFunctionApps) {
            return userProvidedFunctionApps(List.of(userProvidedFunctionApps));
        }
        public GetStaticSiteResult build() {
            final var _resultValue = new GetStaticSiteResult();
            _resultValue.allowConfigFileUpdates = allowConfigFileUpdates;
            _resultValue.branch = branch;
            _resultValue.buildProperties = buildProperties;
            _resultValue.contentDistributionEndpoint = contentDistributionEndpoint;
            _resultValue.customDomains = customDomains;
            _resultValue.databaseConnections = databaseConnections;
            _resultValue.defaultHostname = defaultHostname;
            _resultValue.enterpriseGradeCdnStatus = enterpriseGradeCdnStatus;
            _resultValue.id = id;
            _resultValue.identity = identity;
            _resultValue.keyVaultReferenceIdentity = keyVaultReferenceIdentity;
            _resultValue.kind = kind;
            _resultValue.linkedBackends = linkedBackends;
            _resultValue.location = location;
            _resultValue.name = name;
            _resultValue.privateEndpointConnections = privateEndpointConnections;
            _resultValue.provider = provider;
            _resultValue.publicNetworkAccess = publicNetworkAccess;
            _resultValue.repositoryToken = repositoryToken;
            _resultValue.repositoryUrl = repositoryUrl;
            _resultValue.sku = sku;
            _resultValue.stagingEnvironmentPolicy = stagingEnvironmentPolicy;
            _resultValue.tags = tags;
            _resultValue.templateProperties = templateProperties;
            _resultValue.type = type;
            _resultValue.userProvidedFunctionApps = userProvidedFunctionApps;
            return _resultValue;
        }
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy