Class CreateSparkConnectionDetails.Builder

    • Constructor Detail

      • Builder

        public Builder()
    • Method Detail

      • authenticationType

        public CreateSparkConnectionDetails.Builder authenticationType​(SparkConnection.AuthenticationType authenticationType)
        Authentication type for Spark.

        AES_RPC and SASL_ENCRYPTED securityProtocol values require authenticationType to be SHARED_SECRET. Use SHARED_SECRET only when the target cluster is configured with spark.authenticate=true.

        Parameters:
        authenticationType - the value to set
        Returns:
        this builder
      • securityProtocol

        public CreateSparkConnectionDetails.Builder securityProtocol​(SparkConnection.SecurityProtocol securityProtocol)
        Security protocol for Spark submission traffic.

        PLAINTEXT uses an unencrypted channel, TLS uses TLS for the selected submission endpoint, AES_RPC uses Spark RPC AES encryption, and SASL_ENCRYPTED uses legacy SASL encryption. AES_RPC and SASL_ENCRYPTED require authenticationType to be SHARED_SECRET.

        Parameters:
        securityProtocol - the value to set
        Returns:
        this builder
      • clusterEndpoint

        public CreateSparkConnectionDetails.Builder clusterEndpoint​(String clusterEndpoint)
        Spark master URL used for job submission.

        Required for both submitMode SUBMIT and REST. e.g.: ‘spark://spark-master.example.com:7077’ High availability can be configured with a comma-separated list, for example: ‘spark://h1.example.com:7077,h2.example.com:7077’

        Parameters:
        clusterEndpoint - the value to set
        Returns:
        this builder
      • restEndpoint

        public CreateSparkConnectionDetails.Builder restEndpoint​(String restEndpoint)
        Spark standalone REST submission base URL.

        e.g.: ‘https://spark-master.example.com:6066’ Applicable only and required when submitMode is REST.

        Parameters:
        restEndpoint - the value to set
        Returns:
        this builder
      • authSecret

        public CreateSparkConnectionDetails.Builder authSecret​(char[] authSecret)
        The shared secret used for Spark authentication.

        Applicable when authenticationType is SHARED_SECRET.

        Deprecated: This field is deprecated and replaced by "authSecretSecretId". This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate

        Parameters:
        authSecret - the value to set
        Returns:
        this builder
      • authSecretSecretId

        public CreateSparkConnectionDetails.Builder authSecretSecretId​(String authSecretSecretId)
        The OCID of the Secret that stores the Spark authentication shared secret.

        Applicable when authenticationType is SHARED_SECRET. Note: When provided, ‘authSecret’ field must not be provided.

        Parameters:
        authSecretSecretId - the value to set
        Returns:
        this builder
      • rpcCipher

        public CreateSparkConnectionDetails.Builder rpcCipher​(SparkConnection.RpcCipher rpcCipher)
        Cipher transform used for Spark RPC encryption.

        Applicable when securityProtocol is AES_RPC. Defaults to AES_CTR_NOPADDING when not provided.

        Parameters:
        rpcCipher - the value to set
        Returns:
        this builder
      • restAuthSecretKey

        public CreateSparkConnectionDetails.Builder restAuthSecretKey​(char[] restAuthSecretKey)
        The BASE64URL-encoded HMAC secret key used to sign REST submission requests when the Spark master’s REST endpoint is protected by the JWS filter.

        Applicable only when submitMode is REST and the cluster enforces REST request signing. This setting is independent of authenticationType.

        Deprecated: This field is deprecated and replaced by "restAuthSecretKeySecretId". This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate

        Parameters:
        restAuthSecretKey - the value to set
        Returns:
        this builder
      • restAuthSecretKeySecretId

        public CreateSparkConnectionDetails.Builder restAuthSecretKeySecretId​(String restAuthSecretKeySecretId)
        The OCID of the Secret that stores the REST submission signing key.

        Applicable only when submitMode is REST and the cluster enforces REST request signing. This setting is independent of authenticationType. Note: When provided, ‘restAuthSecretKey’ field must not be provided.

        Parameters:
        restAuthSecretKeySecretId - the value to set
        Returns:
        this builder
      • trustStore

        public CreateSparkConnectionDetails.Builder trustStore​(char[] trustStore)
        The base64 encoded content of the trust store used to validate the Spark server certificate.

        Applicable when securityProtocol is TLS. Provide this when the server certificate is not already trusted by the JVM.

        Deprecated: This field is deprecated and replaced by "trustStoreSecretId". This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate

        Parameters:
        trustStore - the value to set
        Returns:
        this builder
      • trustStoreSecretId

        public CreateSparkConnectionDetails.Builder trustStoreSecretId​(String trustStoreSecretId)
        The OCID of the Secret that stores the trust store content.

        Applicable when securityProtocol is TLS. Provide this when the server certificate is not already trusted by the JVM. Note: When provided, ‘trustStore’ field must not be provided.

        Parameters:
        trustStoreSecretId - the value to set
        Returns:
        this builder
      • trustStorePassword

        public CreateSparkConnectionDetails.Builder trustStorePassword​(char[] trustStorePassword)
        Password for the trust store.

        Applicable when securityProtocol is TLS and a trust store is provided. Required when ‘trustStore’ is provided.

        Deprecated: This field is deprecated and replaced by "trustStorePasswordSecretId". This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate

        Parameters:
        trustStorePassword - the value to set
        Returns:
        this builder
      • trustStorePasswordSecretId

        public CreateSparkConnectionDetails.Builder trustStorePasswordSecretId​(String trustStorePasswordSecretId)
        The OCID of the Secret that stores the trust store password.

        Applicable when securityProtocol is TLS and a trust store is provided. Required when ‘trustStoreSecretId’ is provided. Note: When provided, ‘trustStorePassword’ field must not be provided.

        Parameters:
        trustStorePasswordSecretId - the value to set
        Returns:
        this builder
      • trustStoreType

        public CreateSparkConnectionDetails.Builder trustStoreType​(SparkConnection.TrustStoreType trustStoreType)
        Trust store format used by the Spark client.

        Applicable when securityProtocol is TLS and a trust store is provided. Defaults to JKS when not provided. Provide this only when a trust store is provided.

        Parameters:
        trustStoreType - the value to set
        Returns:
        this builder
      • keyStore

        public CreateSparkConnectionDetails.Builder keyStore​(char[] keyStore)
        The base64 encoded content of the client key store used for mutual TLS.

        Provide this only when the target cluster requires client certificate authentication. Applicable when securityProtocol is TLS.

        Deprecated: This field is deprecated and replaced by "keyStoreSecretId". This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate

        Parameters:
        keyStore - the value to set
        Returns:
        this builder
      • keyStoreSecretId

        public CreateSparkConnectionDetails.Builder keyStoreSecretId​(String keyStoreSecretId)
        The OCID of the Secret that stores the client key store content.

        Applicable when securityProtocol is TLS. Note: When provided, ‘keyStore’ field must not be provided.

        Parameters:
        keyStoreSecretId - the value to set
        Returns:
        this builder
      • keyStorePassword

        public CreateSparkConnectionDetails.Builder keyStorePassword​(char[] keyStorePassword)
        Password for the client key store.

        Applicable when securityProtocol is TLS and a client key store is provided. Required when ‘keyStore’ is provided.

        Deprecated: This field is deprecated and replaced by "keyStorePasswordSecretId". This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate

        Parameters:
        keyStorePassword - the value to set
        Returns:
        this builder
      • keyStorePasswordSecretId

        public CreateSparkConnectionDetails.Builder keyStorePasswordSecretId​(String keyStorePasswordSecretId)
        The OCID of the Secret that stores the client key store password.

        Applicable when securityProtocol is TLS and a client key store is provided. Required when ‘keyStoreSecretId’ is provided. Note: When provided, ‘keyStorePassword’ field must not be provided.

        Parameters:
        keyStorePasswordSecretId - the value to set
        Returns:
        this builder
      • keyStoreType

        public CreateSparkConnectionDetails.Builder keyStoreType​(SparkConnection.KeyStoreType keyStoreType)
        Client key store format used for mutual TLS.

        Applicable when securityProtocol is TLS and a client key store is provided. Defaults to JKS when not provided. Provide this only when a client key store is provided.

        Parameters:
        keyStoreType - the value to set
        Returns:
        this builder
      • sslKeyPassword

        public CreateSparkConnectionDetails.Builder sslKeyPassword​(char[] sslKeyPassword)
        Password for the certificate private key inside the client key store.

        Provide this only when it differs from the key store password. Applicable when securityProtocol is TLS and a client key store is provided.

        Deprecated: This field is deprecated and replaced by "sslKeyPasswordSecretId". This change follows the GoldenGate "Plain Text Fields in Connections" deprecation: https://docs.oracle.com/en-us/iaas/Content/servicechanges.htm#servicechanges_topic-GoldenGate

        Parameters:
        sslKeyPassword - the value to set
        Returns:
        this builder
      • sslKeyPasswordSecretId

        public CreateSparkConnectionDetails.Builder sslKeyPasswordSecretId​(String sslKeyPasswordSecretId)
        The OCID of the Secret that stores the private key password.

        Applicable when securityProtocol is TLS and a client key store is provided. Note: When provided, ‘sslKeyPassword’ field must not be provided.

        Parameters:
        sslKeyPasswordSecretId - the value to set
        Returns:
        this builder
      • tlsProtocol

        public CreateSparkConnectionDetails.Builder tlsProtocol​(SparkConnection.TlsProtocol tlsProtocol)
        TLS protocol negotiated by the Spark client.

        Applicable when securityProtocol is TLS. Defaults to TLS_V1_3 when not provided. Must be supported by the target cluster.

        Parameters:
        tlsProtocol - the value to set
        Returns:
        this builder