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

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

There is a newer version: 2.78.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 HiveLinkedServiceResponse {
    /**
     * @return Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.
     * 
     */
    private @Nullable Object allowHostNameCNMismatch;
    /**
     * @return Specifies whether to allow self-signed certificates from the server. The default value is false.
     * 
     */
    private @Nullable Object allowSelfSignedServerCert;
    /**
     * @return List of tags that can be used for describing the linked service.
     * 
     */
    private @Nullable List annotations;
    /**
     * @return The authentication method used to access the Hive server.
     * 
     */
    private String authenticationType;
    /**
     * @return The integration runtime reference.
     * 
     */
    private @Nullable IntegrationRuntimeReferenceResponse connectVia;
    /**
     * @return Linked service description.
     * 
     */
    private @Nullable String description;
    /**
     * @return Specifies whether the connections to the server are encrypted using SSL. The default value is false.
     * 
     */
    private @Nullable Object enableSsl;
    /**
     * @return The encrypted credential used for authentication. Credentials are encrypted using the integration runtime credential manager. Type: string.
     * 
     */
    private @Nullable String encryptedCredential;
    /**
     * @return IP address or host name of the Hive server, separated by ';' for multiple hosts (only when serviceDiscoveryMode is enable).
     * 
     */
    private Object host;
    /**
     * @return The partial URL corresponding to the Hive server.
     * 
     */
    private @Nullable Object httpPath;
    /**
     * @return Parameters for linked service.
     * 
     */
    private @Nullable Map parameters;
    /**
     * @return The password corresponding to the user name that you provided in the Username field
     * 
     */
    private @Nullable Either password;
    /**
     * @return The TCP port that the Hive server uses to listen for client connections.
     * 
     */
    private @Nullable Object port;
    /**
     * @return The type of Hive server.
     * 
     */
    private @Nullable String serverType;
    /**
     * @return true to indicate using the ZooKeeper service, false not.
     * 
     */
    private @Nullable Object serviceDiscoveryMode;
    /**
     * @return The transport protocol to use in the Thrift layer.
     * 
     */
    private @Nullable String thriftTransportProtocol;
    /**
     * @return The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
     * 
     */
    private @Nullable Object trustedCertPath;
    /**
     * @return Type of linked service.
     * Expected value is 'Hive'.
     * 
     */
    private String type;
    /**
     * @return Specifies whether the driver uses native HiveQL queries,or converts them into an equivalent form in HiveQL.
     * 
     */
    private @Nullable Object useNativeQuery;
    /**
     * @return Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.
     * 
     */
    private @Nullable Object useSystemTrustStore;
    /**
     * @return The user name that you use to access Hive Server.
     * 
     */
    private @Nullable Object username;
    /**
     * @return Version of the linked service.
     * 
     */
    private @Nullable String version;
    /**
     * @return The namespace on ZooKeeper under which Hive Server 2 nodes are added.
     * 
     */
    private @Nullable Object zooKeeperNameSpace;

    private HiveLinkedServiceResponse() {}
    /**
     * @return Specifies whether to require a CA-issued SSL certificate name to match the host name of the server when connecting over SSL. The default value is false.
     * 
     */
    public Optional allowHostNameCNMismatch() {
        return Optional.ofNullable(this.allowHostNameCNMismatch);
    }
    /**
     * @return Specifies whether to allow self-signed certificates from the server. The default value is false.
     * 
     */
    public Optional allowSelfSignedServerCert() {
        return Optional.ofNullable(this.allowSelfSignedServerCert);
    }
    /**
     * @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 authentication method used to access the Hive server.
     * 
     */
    public String authenticationType() {
        return this.authenticationType;
    }
    /**
     * @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 Specifies whether the connections to the server are encrypted using SSL. The default value is false.
     * 
     */
    public Optional enableSsl() {
        return Optional.ofNullable(this.enableSsl);
    }
    /**
     * @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 IP address or host name of the Hive server, separated by ';' for multiple hosts (only when serviceDiscoveryMode is enable).
     * 
     */
    public Object host() {
        return this.host;
    }
    /**
     * @return The partial URL corresponding to the Hive server.
     * 
     */
    public Optional httpPath() {
        return Optional.ofNullable(this.httpPath);
    }
    /**
     * @return Parameters for linked service.
     * 
     */
    public Map parameters() {
        return this.parameters == null ? Map.of() : this.parameters;
    }
    /**
     * @return The password corresponding to the user name that you provided in the Username field
     * 
     */
    public Optional> password() {
        return Optional.ofNullable(this.password);
    }
    /**
     * @return The TCP port that the Hive server uses to listen for client connections.
     * 
     */
    public Optional port() {
        return Optional.ofNullable(this.port);
    }
    /**
     * @return The type of Hive server.
     * 
     */
    public Optional serverType() {
        return Optional.ofNullable(this.serverType);
    }
    /**
     * @return true to indicate using the ZooKeeper service, false not.
     * 
     */
    public Optional serviceDiscoveryMode() {
        return Optional.ofNullable(this.serviceDiscoveryMode);
    }
    /**
     * @return The transport protocol to use in the Thrift layer.
     * 
     */
    public Optional thriftTransportProtocol() {
        return Optional.ofNullable(this.thriftTransportProtocol);
    }
    /**
     * @return The full path of the .pem file containing trusted CA certificates for verifying the server when connecting over SSL. This property can only be set when using SSL on self-hosted IR. The default value is the cacerts.pem file installed with the IR.
     * 
     */
    public Optional trustedCertPath() {
        return Optional.ofNullable(this.trustedCertPath);
    }
    /**
     * @return Type of linked service.
     * Expected value is 'Hive'.
     * 
     */
    public String type() {
        return this.type;
    }
    /**
     * @return Specifies whether the driver uses native HiveQL queries,or converts them into an equivalent form in HiveQL.
     * 
     */
    public Optional useNativeQuery() {
        return Optional.ofNullable(this.useNativeQuery);
    }
    /**
     * @return Specifies whether to use a CA certificate from the system trust store or from a specified PEM file. The default value is false.
     * 
     */
    public Optional useSystemTrustStore() {
        return Optional.ofNullable(this.useSystemTrustStore);
    }
    /**
     * @return The user name that you use to access Hive Server.
     * 
     */
    public Optional username() {
        return Optional.ofNullable(this.username);
    }
    /**
     * @return Version of the linked service.
     * 
     */
    public Optional version() {
        return Optional.ofNullable(this.version);
    }
    /**
     * @return The namespace on ZooKeeper under which Hive Server 2 nodes are added.
     * 
     */
    public Optional zooKeeperNameSpace() {
        return Optional.ofNullable(this.zooKeeperNameSpace);
    }

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

    public static Builder builder(HiveLinkedServiceResponse defaults) {
        return new Builder(defaults);
    }
    @CustomType.Builder
    public static final class Builder {
        private @Nullable Object allowHostNameCNMismatch;
        private @Nullable Object allowSelfSignedServerCert;
        private @Nullable List annotations;
        private String authenticationType;
        private @Nullable IntegrationRuntimeReferenceResponse connectVia;
        private @Nullable String description;
        private @Nullable Object enableSsl;
        private @Nullable String encryptedCredential;
        private Object host;
        private @Nullable Object httpPath;
        private @Nullable Map parameters;
        private @Nullable Either password;
        private @Nullable Object port;
        private @Nullable String serverType;
        private @Nullable Object serviceDiscoveryMode;
        private @Nullable String thriftTransportProtocol;
        private @Nullable Object trustedCertPath;
        private String type;
        private @Nullable Object useNativeQuery;
        private @Nullable Object useSystemTrustStore;
        private @Nullable Object username;
        private @Nullable String version;
        private @Nullable Object zooKeeperNameSpace;
        public Builder() {}
        public Builder(HiveLinkedServiceResponse defaults) {
    	      Objects.requireNonNull(defaults);
    	      this.allowHostNameCNMismatch = defaults.allowHostNameCNMismatch;
    	      this.allowSelfSignedServerCert = defaults.allowSelfSignedServerCert;
    	      this.annotations = defaults.annotations;
    	      this.authenticationType = defaults.authenticationType;
    	      this.connectVia = defaults.connectVia;
    	      this.description = defaults.description;
    	      this.enableSsl = defaults.enableSsl;
    	      this.encryptedCredential = defaults.encryptedCredential;
    	      this.host = defaults.host;
    	      this.httpPath = defaults.httpPath;
    	      this.parameters = defaults.parameters;
    	      this.password = defaults.password;
    	      this.port = defaults.port;
    	      this.serverType = defaults.serverType;
    	      this.serviceDiscoveryMode = defaults.serviceDiscoveryMode;
    	      this.thriftTransportProtocol = defaults.thriftTransportProtocol;
    	      this.trustedCertPath = defaults.trustedCertPath;
    	      this.type = defaults.type;
    	      this.useNativeQuery = defaults.useNativeQuery;
    	      this.useSystemTrustStore = defaults.useSystemTrustStore;
    	      this.username = defaults.username;
    	      this.version = defaults.version;
    	      this.zooKeeperNameSpace = defaults.zooKeeperNameSpace;
        }

        @CustomType.Setter
        public Builder allowHostNameCNMismatch(@Nullable Object allowHostNameCNMismatch) {

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

            this.allowSelfSignedServerCert = allowSelfSignedServerCert;
            return this;
        }
        @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 authenticationType(String authenticationType) {
            if (authenticationType == null) {
              throw new MissingRequiredPropertyException("HiveLinkedServiceResponse", "authenticationType");
            }
            this.authenticationType = authenticationType;
            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 enableSsl(@Nullable Object enableSsl) {

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

            this.encryptedCredential = encryptedCredential;
            return this;
        }
        @CustomType.Setter
        public Builder host(Object host) {
            if (host == null) {
              throw new MissingRequiredPropertyException("HiveLinkedServiceResponse", "host");
            }
            this.host = host;
            return this;
        }
        @CustomType.Setter
        public Builder httpPath(@Nullable Object httpPath) {

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

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

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

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

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

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

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

            this.trustedCertPath = trustedCertPath;
            return this;
        }
        @CustomType.Setter
        public Builder type(String type) {
            if (type == null) {
              throw new MissingRequiredPropertyException("HiveLinkedServiceResponse", "type");
            }
            this.type = type;
            return this;
        }
        @CustomType.Setter
        public Builder useNativeQuery(@Nullable Object useNativeQuery) {

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

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

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

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

            this.zooKeeperNameSpace = zooKeeperNameSpace;
            return this;
        }
        public HiveLinkedServiceResponse build() {
            final var _resultValue = new HiveLinkedServiceResponse();
            _resultValue.allowHostNameCNMismatch = allowHostNameCNMismatch;
            _resultValue.allowSelfSignedServerCert = allowSelfSignedServerCert;
            _resultValue.annotations = annotations;
            _resultValue.authenticationType = authenticationType;
            _resultValue.connectVia = connectVia;
            _resultValue.description = description;
            _resultValue.enableSsl = enableSsl;
            _resultValue.encryptedCredential = encryptedCredential;
            _resultValue.host = host;
            _resultValue.httpPath = httpPath;
            _resultValue.parameters = parameters;
            _resultValue.password = password;
            _resultValue.port = port;
            _resultValue.serverType = serverType;
            _resultValue.serviceDiscoveryMode = serviceDiscoveryMode;
            _resultValue.thriftTransportProtocol = thriftTransportProtocol;
            _resultValue.trustedCertPath = trustedCertPath;
            _resultValue.type = type;
            _resultValue.useNativeQuery = useNativeQuery;
            _resultValue.useSystemTrustStore = useSystemTrustStore;
            _resultValue.username = username;
            _resultValue.version = version;
            _resultValue.zooKeeperNameSpace = zooKeeperNameSpace;
            return _resultValue;
        }
    }
}