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

com.pulumi.azurenative.datafactory.outputs.LakeHouseLinkedServiceResponse Maven / Gradle / Ivy

There is a newer version: 2.72.0
Show newest version
// *** 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.datafactory.outputs;

import com.pulumi.azurenative.datafactory.outputs.AzureKeyVaultSecretReferenceResponse;
import com.pulumi.azurenative.datafactory.outputs.IntegrationRuntimeReferenceResponse;
import com.pulumi.azurenative.datafactory.outputs.ParameterSpecificationResponse;
import com.pulumi.azurenative.datafactory.outputs.SecureStringResponse;
import com.pulumi.core.Either;
import com.pulumi.core.annotations.CustomType;
import com.pulumi.exceptions.MissingRequiredPropertyException;
import java.lang.Object;
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 LakeHouseLinkedServiceResponse {
    /**
     * @return List of tags that can be used for describing the linked service.
     * 
     */
    private @Nullable List annotations;
    /**
     * @return The ID of Microsoft Fabric LakeHouse artifact. Type: string (or Expression with resultType string).
     * 
     */
    private @Nullable Object artifactId;
    /**
     * @return The integration runtime reference.
     * 
     */
    private @Nullable IntegrationRuntimeReferenceResponse connectVia;
    /**
     * @return Linked service description.
     * 
     */
    private @Nullable String description;
    /**
     * @return The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
     * 
     */
    private @Nullable String encryptedCredential;
    /**
     * @return Parameters for linked service.
     * 
     */
    private @Nullable Map parameters;
    /**
     * @return The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference.
     * 
     */
    private @Nullable Either servicePrincipalCredential;
    /**
     * @return The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string).
     * 
     */
    private @Nullable Object servicePrincipalCredentialType;
    /**
     * @return The ID of the application used to authenticate against Microsoft Fabric LakeHouse. Type: string (or Expression with resultType string).
     * 
     */
    private @Nullable Object servicePrincipalId;
    /**
     * @return The Key of the application used to authenticate against Microsoft Fabric LakeHouse.
     * 
     */
    private @Nullable Either servicePrincipalKey;
    /**
     * @return The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string).
     * 
     */
    private @Nullable Object tenant;
    /**
     * @return Type of linked service.
     * Expected value is 'LakeHouse'.
     * 
     */
    private String type;
    /**
     * @return Version of the linked service.
     * 
     */
    private @Nullable String version;
    /**
     * @return The ID of Microsoft Fabric workspace. Type: string (or Expression with resultType string).
     * 
     */
    private @Nullable Object workspaceId;

    private LakeHouseLinkedServiceResponse() {}
    /**
     * @return List of tags that can be used for describing the linked service.
     * 
     */
    public List annotations() {
        return this.annotations == null ? List.of() : this.annotations;
    }
    /**
     * @return The ID of Microsoft Fabric LakeHouse artifact. Type: string (or Expression with resultType string).
     * 
     */
    public Optional artifactId() {
        return Optional.ofNullable(this.artifactId);
    }
    /**
     * @return The integration runtime reference.
     * 
     */
    public Optional connectVia() {
        return Optional.ofNullable(this.connectVia);
    }
    /**
     * @return Linked service description.
     * 
     */
    public Optional description() {
        return Optional.ofNullable(this.description);
    }
    /**
     * @return The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
     * 
     */
    public Optional encryptedCredential() {
        return Optional.ofNullable(this.encryptedCredential);
    }
    /**
     * @return Parameters for linked service.
     * 
     */
    public Map parameters() {
        return this.parameters == null ? Map.of() : this.parameters;
    }
    /**
     * @return The credential of the service principal object in Azure Active Directory. If servicePrincipalCredentialType is 'ServicePrincipalKey', servicePrincipalCredential can be SecureString or AzureKeyVaultSecretReference. If servicePrincipalCredentialType is 'ServicePrincipalCert', servicePrincipalCredential can only be AzureKeyVaultSecretReference.
     * 
     */
    public Optional> servicePrincipalCredential() {
        return Optional.ofNullable(this.servicePrincipalCredential);
    }
    /**
     * @return The service principal credential type to use in Server-To-Server authentication. 'ServicePrincipalKey' for key/secret, 'ServicePrincipalCert' for certificate. Type: string (or Expression with resultType string).
     * 
     */
    public Optional servicePrincipalCredentialType() {
        return Optional.ofNullable(this.servicePrincipalCredentialType);
    }
    /**
     * @return The ID of the application used to authenticate against Microsoft Fabric LakeHouse. Type: string (or Expression with resultType string).
     * 
     */
    public Optional servicePrincipalId() {
        return Optional.ofNullable(this.servicePrincipalId);
    }
    /**
     * @return The Key of the application used to authenticate against Microsoft Fabric LakeHouse.
     * 
     */
    public Optional> servicePrincipalKey() {
        return Optional.ofNullable(this.servicePrincipalKey);
    }
    /**
     * @return The name or ID of the tenant to which the service principal belongs. Type: string (or Expression with resultType string).
     * 
     */
    public Optional tenant() {
        return Optional.ofNullable(this.tenant);
    }
    /**
     * @return Type of linked service.
     * Expected value is 'LakeHouse'.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return Version of the linked service.
     * 
     */
    public Optional version() {
        return Optional.ofNullable(this.version);
    }
    /**
     * @return The ID of Microsoft Fabric workspace. Type: string (or Expression with resultType string).
     * 
     */
    public Optional workspaceId() {
        return Optional.ofNullable(this.workspaceId);
    }

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

    public static Builder builder(LakeHouseLinkedServiceResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable List annotations;
        private @Nullable Object artifactId;
        private @Nullable IntegrationRuntimeReferenceResponse connectVia;
        private @Nullable String description;
        private @Nullable String encryptedCredential;
        private @Nullable Map parameters;
        private @Nullable Either servicePrincipalCredential;
        private @Nullable Object servicePrincipalCredentialType;
        private @Nullable Object servicePrincipalId;
        private @Nullable Either servicePrincipalKey;
        private @Nullable Object tenant;
        private String type;
        private @Nullable String version;
        private @Nullable Object workspaceId;
        public Builder() {}
        public Builder(LakeHouseLinkedServiceResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.annotations = defaults.annotations;
    	      this.artifactId = defaults.artifactId;
    	      this.connectVia = defaults.connectVia;
    	      this.description = defaults.description;
    	      this.encryptedCredential = defaults.encryptedCredential;
    	      this.parameters = defaults.parameters;
    	      this.servicePrincipalCredential = defaults.servicePrincipalCredential;
    	      this.servicePrincipalCredentialType = defaults.servicePrincipalCredentialType;
    	      this.servicePrincipalId = defaults.servicePrincipalId;
    	      this.servicePrincipalKey = defaults.servicePrincipalKey;
    	      this.tenant = defaults.tenant;
    	      this.type = defaults.type;
    	      this.version = defaults.version;
    	      this.workspaceId = defaults.workspaceId;
        }

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

            this.annotations = annotations;
            return this;
        }
        public Builder annotations(Object... annotations) {
            return annotations(List.of(annotations));
        }
        @CustomType.Setter
        public Builder artifactId(@Nullable Object artifactId) {

            this.artifactId = artifactId;
            return this;
        }
        @CustomType.Setter
        public Builder connectVia(@Nullable IntegrationRuntimeReferenceResponse connectVia) {

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

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

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

            this.parameters = parameters;
            return this;
        }
        @CustomType.Setter
        public Builder servicePrincipalCredential(@Nullable Either servicePrincipalCredential) {

            this.servicePrincipalCredential = servicePrincipalCredential;
            return this;
        }
        @CustomType.Setter
        public Builder servicePrincipalCredentialType(@Nullable Object servicePrincipalCredentialType) {

            this.servicePrincipalCredentialType = servicePrincipalCredentialType;
            return this;
        }
        @CustomType.Setter
        public Builder servicePrincipalId(@Nullable Object servicePrincipalId) {

            this.servicePrincipalId = servicePrincipalId;
            return this;
        }
        @CustomType.Setter
        public Builder servicePrincipalKey(@Nullable Either servicePrincipalKey) {

            this.servicePrincipalKey = servicePrincipalKey;
            return this;
        }
        @CustomType.Setter
        public Builder tenant(@Nullable Object tenant) {

            this.tenant = tenant;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("LakeHouseLinkedServiceResponse", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder version(@Nullable String version) {

            this.version = version;
            return this;
        }
        @CustomType.Setter
        public Builder workspaceId(@Nullable Object workspaceId) {

            this.workspaceId = workspaceId;
            return this;
        }
        public LakeHouseLinkedServiceResponse build() {
            final var _resultValue = new LakeHouseLinkedServiceResponse();
            _resultValue.annotations = annotations;
            _resultValue.artifactId = artifactId;
            _resultValue.connectVia = connectVia;
            _resultValue.description = description;
            _resultValue.encryptedCredential = encryptedCredential;
            _resultValue.parameters = parameters;
            _resultValue.servicePrincipalCredential = servicePrincipalCredential;
            _resultValue.servicePrincipalCredentialType = servicePrincipalCredentialType;
            _resultValue.servicePrincipalId = servicePrincipalId;
            _resultValue.servicePrincipalKey = servicePrincipalKey;
            _resultValue.tenant = tenant;
            _resultValue.type = type;
            _resultValue.version = version;
            _resultValue.workspaceId = workspaceId;
            return _resultValue;
        }
    }
}