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

com.hashicorp.cdktf.providers.snowflake.provider.SnowflakeProviderConfig Maven / Gradle / Ivy

The newest version!
package com.hashicorp.cdktf.providers.snowflake.provider;

/**
 */
@javax.annotation.Generated(value = "jsii-pacmak/1.101.0 (build b95fe5d)", date = "2024-08-03T03:24:50.546Z")
@software.amazon.jsii.Jsii(module = com.hashicorp.cdktf.providers.snowflake.$Module.class, fqn = "@cdktf/provider-snowflake.provider.SnowflakeProviderConfig")
@software.amazon.jsii.Jsii.Proxy(SnowflakeProviderConfig.Jsii$Proxy.class)
@software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable)
public interface SnowflakeProviderConfig extends software.amazon.jsii.JsiiSerializable {

    /**
     * Specifies your Snowflake account identifier assigned, by Snowflake.
     * 

* For information about account identifiers, see the [Snowflake documentation](https://docs.snowflake.com/en/user-guide/admin-account-identifier.html). Can also be sourced from the `SNOWFLAKE_ACCOUNT` environment variable. Required unless using `profile`. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#account SnowflakeProvider#account} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getAccount() { return null; } /** * Alias name. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#alias SnowflakeProvider#alias} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getAlias() { return null; } /** * Specifies the authentication type to use when connecting to Snowflake. Valid values include: Snowflake, OAuth, ExternalBrowser, Okta, JWT, TokenAccessor, UsernamePasswordMFA. Can also be sourced from the SNOWFLAKE_AUTHENTICATOR environment variable. It has to be set explicitly to JWT for private key authentication. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#authenticator SnowflakeProvider#authenticator} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getAuthenticator() { return null; } /** * Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_USE_BROWSER_AUTH environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#browser_auth SnowflakeProvider#browser_auth} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getBrowserAuth() { return null; } /** * IP address for network checks. Can also be sourced from the SNOWFLAKE_CLIENT_IP environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_ip SnowflakeProvider#client_ip} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getClientIp() { return null; } /** * When true the MFA token is cached in the credential manager. *

* True by default in Windows/OSX. False for Linux. Can also be sourced from the `SNOWFLAKE_CLIENT_REQUEST_MFA_TOKEN` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_request_mfa_token SnowflakeProvider#client_request_mfa_token} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getClientRequestMfaToken() { return null; } /** * When true the ID token is cached in the credential manager. *

* True by default in Windows/OSX. False for Linux. Can also be sourced from the `SNOWFLAKE_CLIENT_STORE_TEMPORARY_CREDENTIAL` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_store_temporary_credential SnowflakeProvider#client_store_temporary_credential} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getClientStoreTemporaryCredential() { return null; } /** * The timeout in seconds for the client to complete the authentication. *

* Default is 900 seconds. Can also be sourced from the `SNOWFLAKE_CLIENT_TIMEOUT` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_timeout SnowflakeProvider#client_timeout} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getClientTimeout() { return null; } /** * Should HTAP query context cache be disabled. Can also be sourced from the SNOWFLAKE_DISABLE_QUERY_CONTEXT_CACHE environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#disable_query_context_cache SnowflakeProvider#disable_query_context_cache} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getDisableQueryContextCache() { return null; } /** * Indicates whether to disable telemetry. Can also be sourced from the SNOWFLAKE_DISABLE_TELEMETRY environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#disable_telemetry SnowflakeProvider#disable_telemetry} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getDisableTelemetry() { return null; } /** * The timeout in seconds for the external browser to complete the authentication. *

* Default is 120 seconds. Can also be sourced from the `SNOWFLAKE_EXTERNAL_BROWSER_TIMEOUT` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#external_browser_timeout SnowflakeProvider#external_browser_timeout} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getExternalBrowserTimeout() { return null; } /** * Supports passing in a custom host value to the snowflake go driver for use with privatelink. *

* Can also be sourced from the `SNOWFLAKE_HOST` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#host SnowflakeProvider#host} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getHost() { return null; } /** * If true, bypass the Online Certificate Status Protocol (OCSP) certificate revocation check. *

* IMPORTANT: Change the default value for testing or emergency situations only. Can also be sourced from the `SNOWFLAKE_INSECURE_MODE` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#insecure_mode SnowflakeProvider#insecure_mode} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getInsecureMode() { return null; } /** * The timeout in seconds for the JWT client to complete the authentication. *

* Default is 10 seconds. Can also be sourced from the `SNOWFLAKE_JWT_CLIENT_TIMEOUT` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#jwt_client_timeout SnowflakeProvider#jwt_client_timeout} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getJwtClientTimeout() { return null; } /** * JWT expire after timeout in seconds. Can also be sourced from the SNOWFLAKE_JWT_EXPIRE_TIMEOUT environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#jwt_expire_timeout SnowflakeProvider#jwt_expire_timeout} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getJwtExpireTimeout() { return null; } /** * Enables the session to persist even after the connection is closed. *

* Can also be sourced from the `SNOWFLAKE_KEEP_SESSION_ALIVE` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#keep_session_alive SnowflakeProvider#keep_session_alive} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getKeepSessionAlive() { return null; } /** * Login retry timeout EXCLUDING network roundtrip and read out http response. *

* Can also be sourced from the `SNOWFLAKE_LOGIN_TIMEOUT` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#login_timeout SnowflakeProvider#login_timeout} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getLoginTimeout() { return null; } /** * Token for use with OAuth. *

* Generating the token is left to other tools. Cannot be used with `browser_auth`, `private_key_path`, `oauth_refresh_token` or `password`. Can also be sourced from `SNOWFLAKE_OAUTH_ACCESS_TOKEN` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_access_token SnowflakeProvider#oauth_access_token} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getOauthAccessToken() { return null; } /** * Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_OAUTH_CLIENT_ID environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_client_id SnowflakeProvider#oauth_client_id} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getOauthClientId() { return null; } /** * Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_OAUTH_CLIENT_SECRET environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_client_secret SnowflakeProvider#oauth_client_secret} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getOauthClientSecret() { return null; } /** * Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_OAUTH_ENDPOINT environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_endpoint SnowflakeProvider#oauth_endpoint} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getOauthEndpoint() { return null; } /** * Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_OAUTH_REDIRECT_URL environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_redirect_url SnowflakeProvider#oauth_redirect_url} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getOauthRedirectUrl() { return null; } /** * Token for use with OAuth. *

* Setup and generation of the token is left to other tools. Should be used in conjunction with `oauth_client_id`, `oauth_client_secret`, `oauth_endpoint`, `oauth_redirect_url`. Cannot be used with `browser_auth`, `private_key_path`, `oauth_access_token` or `password`. Can also be sourced from `SNOWFLAKE_OAUTH_REFRESH_TOKEN` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_refresh_token SnowflakeProvider#oauth_refresh_token} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getOauthRefreshToken() { return null; } /** * True represents OCSP fail open mode. *

* False represents OCSP fail closed mode. Fail open true by default. Can also be sourced from the `SNOWFLAKE_OCSP_FAIL_OPEN` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#ocsp_fail_open SnowflakeProvider#ocsp_fail_open} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getOcspFailOpen() { return null; } /** * The URL of the Okta server. e.g. https://example.okta.com. Can also be sourced from the SNOWFLAKE_OKTA_URL environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#okta_url SnowflakeProvider#okta_url} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getOktaUrl() { return null; } /** * Sets other connection (i.e. session) parameters. Parameters. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#params SnowflakeProvider#params} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.Map getParams() { return null; } /** * Specifies the passcode provided by Duo when using multi-factor authentication (MFA) for login. *

* Can also be sourced from the `SNOWFLAKE_PASSCODE` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#passcode SnowflakeProvider#passcode} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getPasscode() { return null; } /** * False by default. *

* Set to true if the MFA passcode is embedded in the login password. Appends the MFA passcode to the end of the password. Can also be sourced from the `SNOWFLAKE_PASSCODE_IN_PASSWORD` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#passcode_in_password SnowflakeProvider#passcode_in_password} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getPasscodeInPassword() { return null; } /** * Password for username+password auth. *

* Cannot be used with `browser_auth` or `private_key_path`. Can also be sourced from the `SNOWFLAKE_PASSWORD` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#password SnowflakeProvider#password} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getPassword() { return null; } /** * Support custom port values to snowflake go driver for use with privatelink. *

* Can also be sourced from the `SNOWFLAKE_PORT` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#port SnowflakeProvider#port} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getPort() { return null; } /** * Private Key for username+private-key auth. *

* Cannot be used with `browser_auth` or `password`. Can also be sourced from `SNOWFLAKE_PRIVATE_KEY` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#private_key SnowflakeProvider#private_key} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getPrivateKey() { return null; } /** * Supports the encryption ciphers aes-128-cbc, aes-128-gcm, aes-192-cbc, aes-192-gcm, aes-256-cbc, aes-256-gcm, and des-ede3-cbc. *

* Can also be sourced from `SNOWFLAKE_PRIVATE_KEY_PASSPHRASE` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#private_key_passphrase SnowflakeProvider#private_key_passphrase} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getPrivateKeyPassphrase() { return null; } /** * Path to a private key for using keypair authentication. *

* Cannot be used with `browser_auth`, `oauth_access_token` or `password`. Can also be sourced from `SNOWFLAKE_PRIVATE_KEY_PATH` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#private_key_path SnowflakeProvider#private_key_path} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getPrivateKeyPath() { return null; } /** * Sets the profile to read from ~/.snowflake/config file. Can also be sourced from the SNOWFLAKE_PROFILE environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#profile SnowflakeProvider#profile} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getProfile() { return null; } /** * Either http or https, defaults to https. Can also be sourced from the SNOWFLAKE_PROTOCOL environment variable. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#protocol SnowflakeProvider#protocol} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getProtocol() { return null; } /** * Snowflake region, such as "eu-central-1", with this parameter. *

* However, since this parameter is deprecated, it is best to specify the region as part of the account parameter. For details, see the description of the account parameter. [Snowflake region](https://docs.snowflake.com/en/user-guide/intro-regions.html) to use. Required if using the [legacy format for the `account` identifier](https://docs.snowflake.com/en/user-guide/admin-account-identifier.html#format-2-legacy-account-locator-in-a-region) in the form of `.`. Can also be sourced from the `SNOWFLAKE_REGION` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#region SnowflakeProvider#region} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getRegion() { return null; } /** * request retry timeout EXCLUDING network roundtrip and read out http response. *

* Can also be sourced from the `SNOWFLAKE_REQUEST_TIMEOUT` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#request_timeout SnowflakeProvider#request_timeout} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getRequestTimeout() { return null; } /** * Specifies the role to use by default for accessing Snowflake objects in the client session. *

* Can also be sourced from the `SNOWFLAKE_ROLE` environment variable. . * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#role SnowflakeProvider#role} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getRole() { return null; } /** * Sets session parameters. Parameters. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#session_params SnowflakeProvider#session_params} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.Map getSessionParams() { return null; } /** * Token to use for OAuth and other forms of token based auth. *

* Can also be sourced from the `SNOWFLAKE_TOKEN` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#token SnowflakeProvider#token} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getToken() { return null; } /** * token_accessor block. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#token_accessor SnowflakeProvider#token_accessor} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable com.hashicorp.cdktf.providers.snowflake.provider.SnowflakeProviderTokenAccessor getTokenAccessor() { return null; } /** * Username. Can also be sourced from the SNOWFLAKE_USER environment variable. Required unless using profile. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#user SnowflakeProvider#user} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getUser() { return null; } /** * Username for username+password authentication. Can also be sourced from the SNOWFLAKE_USERNAME environment variable. Required unless using profile. *

* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#username SnowflakeProvider#username} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getUsername() { return null; } /** * True by default. *

* If false, disables the validation checks for Database, Schema, Warehouse and Role at the time a connection is established. Can also be sourced from the `SNOWFLAKE_VALIDATE_DEFAULT_PARAMETERS` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#validate_default_parameters SnowflakeProvider#validate_default_parameters} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getValidateDefaultParameters() { return null; } /** * Specifies the virtual warehouse to use by default for queries, loading, etc. *

* in the client session. Can also be sourced from the `SNOWFLAKE_WAREHOUSE` environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#warehouse SnowflakeProvider#warehouse} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getWarehouse() { return null; } /** * @return a {@link Builder} of {@link SnowflakeProviderConfig} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link SnowflakeProviderConfig} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String account; java.lang.String alias; java.lang.String authenticator; java.lang.Object browserAuth; java.lang.String clientIp; java.lang.Object clientRequestMfaToken; java.lang.Object clientStoreTemporaryCredential; java.lang.Number clientTimeout; java.lang.Object disableQueryContextCache; java.lang.Object disableTelemetry; java.lang.Number externalBrowserTimeout; java.lang.String host; java.lang.Object insecureMode; java.lang.Number jwtClientTimeout; java.lang.Number jwtExpireTimeout; java.lang.Object keepSessionAlive; java.lang.Number loginTimeout; java.lang.String oauthAccessToken; java.lang.String oauthClientId; java.lang.String oauthClientSecret; java.lang.String oauthEndpoint; java.lang.String oauthRedirectUrl; java.lang.String oauthRefreshToken; java.lang.Object ocspFailOpen; java.lang.String oktaUrl; java.util.Map params; java.lang.String passcode; java.lang.Object passcodeInPassword; java.lang.String password; java.lang.Number port; java.lang.String privateKey; java.lang.String privateKeyPassphrase; java.lang.String privateKeyPath; java.lang.String profile; java.lang.String protocol; java.lang.String region; java.lang.Number requestTimeout; java.lang.String role; java.util.Map sessionParams; java.lang.String token; com.hashicorp.cdktf.providers.snowflake.provider.SnowflakeProviderTokenAccessor tokenAccessor; java.lang.String user; java.lang.String username; java.lang.Object validateDefaultParameters; java.lang.String warehouse; /** * Sets the value of {@link SnowflakeProviderConfig#getAccount} * @param account Specifies your Snowflake account identifier assigned, by Snowflake. * For information about account identifiers, see the [Snowflake documentation](https://docs.snowflake.com/en/user-guide/admin-account-identifier.html). Can also be sourced from the `SNOWFLAKE_ACCOUNT` environment variable. Required unless using `profile`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#account SnowflakeProvider#account} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder account(java.lang.String account) { this.account = account; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getAlias} * @param alias Alias name. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#alias SnowflakeProvider#alias} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder alias(java.lang.String alias) { this.alias = alias; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getAuthenticator} * @param authenticator Specifies the authentication type to use when connecting to Snowflake. Valid values include: Snowflake, OAuth, ExternalBrowser, Okta, JWT, TokenAccessor, UsernamePasswordMFA. Can also be sourced from the SNOWFLAKE_AUTHENTICATOR environment variable. It has to be set explicitly to JWT for private key authentication. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#authenticator SnowflakeProvider#authenticator} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder authenticator(java.lang.String authenticator) { this.authenticator = authenticator; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getBrowserAuth} * @param browserAuth Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_USE_BROWSER_AUTH environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#browser_auth SnowflakeProvider#browser_auth} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder browserAuth(java.lang.Boolean browserAuth) { this.browserAuth = browserAuth; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getBrowserAuth} * @param browserAuth Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_USE_BROWSER_AUTH environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#browser_auth SnowflakeProvider#browser_auth} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder browserAuth(com.hashicorp.cdktf.IResolvable browserAuth) { this.browserAuth = browserAuth; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getClientIp} * @param clientIp IP address for network checks. Can also be sourced from the SNOWFLAKE_CLIENT_IP environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_ip SnowflakeProvider#client_ip} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder clientIp(java.lang.String clientIp) { this.clientIp = clientIp; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getClientRequestMfaToken} * @param clientRequestMfaToken When true the MFA token is cached in the credential manager. * True by default in Windows/OSX. False for Linux. Can also be sourced from the `SNOWFLAKE_CLIENT_REQUEST_MFA_TOKEN` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_request_mfa_token SnowflakeProvider#client_request_mfa_token} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder clientRequestMfaToken(java.lang.Boolean clientRequestMfaToken) { this.clientRequestMfaToken = clientRequestMfaToken; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getClientRequestMfaToken} * @param clientRequestMfaToken When true the MFA token is cached in the credential manager. * True by default in Windows/OSX. False for Linux. Can also be sourced from the `SNOWFLAKE_CLIENT_REQUEST_MFA_TOKEN` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_request_mfa_token SnowflakeProvider#client_request_mfa_token} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder clientRequestMfaToken(com.hashicorp.cdktf.IResolvable clientRequestMfaToken) { this.clientRequestMfaToken = clientRequestMfaToken; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getClientStoreTemporaryCredential} * @param clientStoreTemporaryCredential When true the ID token is cached in the credential manager. * True by default in Windows/OSX. False for Linux. Can also be sourced from the `SNOWFLAKE_CLIENT_STORE_TEMPORARY_CREDENTIAL` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_store_temporary_credential SnowflakeProvider#client_store_temporary_credential} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder clientStoreTemporaryCredential(java.lang.Boolean clientStoreTemporaryCredential) { this.clientStoreTemporaryCredential = clientStoreTemporaryCredential; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getClientStoreTemporaryCredential} * @param clientStoreTemporaryCredential When true the ID token is cached in the credential manager. * True by default in Windows/OSX. False for Linux. Can also be sourced from the `SNOWFLAKE_CLIENT_STORE_TEMPORARY_CREDENTIAL` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_store_temporary_credential SnowflakeProvider#client_store_temporary_credential} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder clientStoreTemporaryCredential(com.hashicorp.cdktf.IResolvable clientStoreTemporaryCredential) { this.clientStoreTemporaryCredential = clientStoreTemporaryCredential; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getClientTimeout} * @param clientTimeout The timeout in seconds for the client to complete the authentication. * Default is 900 seconds. Can also be sourced from the `SNOWFLAKE_CLIENT_TIMEOUT` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#client_timeout SnowflakeProvider#client_timeout} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder clientTimeout(java.lang.Number clientTimeout) { this.clientTimeout = clientTimeout; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getDisableQueryContextCache} * @param disableQueryContextCache Should HTAP query context cache be disabled. Can also be sourced from the SNOWFLAKE_DISABLE_QUERY_CONTEXT_CACHE environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#disable_query_context_cache SnowflakeProvider#disable_query_context_cache} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder disableQueryContextCache(java.lang.Boolean disableQueryContextCache) { this.disableQueryContextCache = disableQueryContextCache; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getDisableQueryContextCache} * @param disableQueryContextCache Should HTAP query context cache be disabled. Can also be sourced from the SNOWFLAKE_DISABLE_QUERY_CONTEXT_CACHE environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#disable_query_context_cache SnowflakeProvider#disable_query_context_cache} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder disableQueryContextCache(com.hashicorp.cdktf.IResolvable disableQueryContextCache) { this.disableQueryContextCache = disableQueryContextCache; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getDisableTelemetry} * @param disableTelemetry Indicates whether to disable telemetry. Can also be sourced from the SNOWFLAKE_DISABLE_TELEMETRY environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#disable_telemetry SnowflakeProvider#disable_telemetry} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder disableTelemetry(java.lang.Boolean disableTelemetry) { this.disableTelemetry = disableTelemetry; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getDisableTelemetry} * @param disableTelemetry Indicates whether to disable telemetry. Can also be sourced from the SNOWFLAKE_DISABLE_TELEMETRY environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#disable_telemetry SnowflakeProvider#disable_telemetry} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder disableTelemetry(com.hashicorp.cdktf.IResolvable disableTelemetry) { this.disableTelemetry = disableTelemetry; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getExternalBrowserTimeout} * @param externalBrowserTimeout The timeout in seconds for the external browser to complete the authentication. * Default is 120 seconds. Can also be sourced from the `SNOWFLAKE_EXTERNAL_BROWSER_TIMEOUT` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#external_browser_timeout SnowflakeProvider#external_browser_timeout} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder externalBrowserTimeout(java.lang.Number externalBrowserTimeout) { this.externalBrowserTimeout = externalBrowserTimeout; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getHost} * @param host Supports passing in a custom host value to the snowflake go driver for use with privatelink. * Can also be sourced from the `SNOWFLAKE_HOST` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#host SnowflakeProvider#host} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder host(java.lang.String host) { this.host = host; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getInsecureMode} * @param insecureMode If true, bypass the Online Certificate Status Protocol (OCSP) certificate revocation check. * IMPORTANT: Change the default value for testing or emergency situations only. Can also be sourced from the `SNOWFLAKE_INSECURE_MODE` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#insecure_mode SnowflakeProvider#insecure_mode} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder insecureMode(java.lang.Boolean insecureMode) { this.insecureMode = insecureMode; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getInsecureMode} * @param insecureMode If true, bypass the Online Certificate Status Protocol (OCSP) certificate revocation check. * IMPORTANT: Change the default value for testing or emergency situations only. Can also be sourced from the `SNOWFLAKE_INSECURE_MODE` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#insecure_mode SnowflakeProvider#insecure_mode} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder insecureMode(com.hashicorp.cdktf.IResolvable insecureMode) { this.insecureMode = insecureMode; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getJwtClientTimeout} * @param jwtClientTimeout The timeout in seconds for the JWT client to complete the authentication. * Default is 10 seconds. Can also be sourced from the `SNOWFLAKE_JWT_CLIENT_TIMEOUT` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#jwt_client_timeout SnowflakeProvider#jwt_client_timeout} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder jwtClientTimeout(java.lang.Number jwtClientTimeout) { this.jwtClientTimeout = jwtClientTimeout; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getJwtExpireTimeout} * @param jwtExpireTimeout JWT expire after timeout in seconds. Can also be sourced from the SNOWFLAKE_JWT_EXPIRE_TIMEOUT environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#jwt_expire_timeout SnowflakeProvider#jwt_expire_timeout} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder jwtExpireTimeout(java.lang.Number jwtExpireTimeout) { this.jwtExpireTimeout = jwtExpireTimeout; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getKeepSessionAlive} * @param keepSessionAlive Enables the session to persist even after the connection is closed. * Can also be sourced from the `SNOWFLAKE_KEEP_SESSION_ALIVE` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#keep_session_alive SnowflakeProvider#keep_session_alive} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder keepSessionAlive(java.lang.Boolean keepSessionAlive) { this.keepSessionAlive = keepSessionAlive; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getKeepSessionAlive} * @param keepSessionAlive Enables the session to persist even after the connection is closed. * Can also be sourced from the `SNOWFLAKE_KEEP_SESSION_ALIVE` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#keep_session_alive SnowflakeProvider#keep_session_alive} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder keepSessionAlive(com.hashicorp.cdktf.IResolvable keepSessionAlive) { this.keepSessionAlive = keepSessionAlive; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getLoginTimeout} * @param loginTimeout Login retry timeout EXCLUDING network roundtrip and read out http response. * Can also be sourced from the `SNOWFLAKE_LOGIN_TIMEOUT` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#login_timeout SnowflakeProvider#login_timeout} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder loginTimeout(java.lang.Number loginTimeout) { this.loginTimeout = loginTimeout; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOauthAccessToken} * @param oauthAccessToken Token for use with OAuth. * Generating the token is left to other tools. Cannot be used with `browser_auth`, `private_key_path`, `oauth_refresh_token` or `password`. Can also be sourced from `SNOWFLAKE_OAUTH_ACCESS_TOKEN` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_access_token SnowflakeProvider#oauth_access_token} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder oauthAccessToken(java.lang.String oauthAccessToken) { this.oauthAccessToken = oauthAccessToken; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOauthClientId} * @param oauthClientId Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_OAUTH_CLIENT_ID environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_client_id SnowflakeProvider#oauth_client_id} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder oauthClientId(java.lang.String oauthClientId) { this.oauthClientId = oauthClientId; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOauthClientSecret} * @param oauthClientSecret Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_OAUTH_CLIENT_SECRET environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_client_secret SnowflakeProvider#oauth_client_secret} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder oauthClientSecret(java.lang.String oauthClientSecret) { this.oauthClientSecret = oauthClientSecret; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOauthEndpoint} * @param oauthEndpoint Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_OAUTH_ENDPOINT environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_endpoint SnowflakeProvider#oauth_endpoint} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder oauthEndpoint(java.lang.String oauthEndpoint) { this.oauthEndpoint = oauthEndpoint; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOauthRedirectUrl} * @param oauthRedirectUrl Required when oauth_refresh_token is used. Can also be sourced from SNOWFLAKE_OAUTH_REDIRECT_URL environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_redirect_url SnowflakeProvider#oauth_redirect_url} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder oauthRedirectUrl(java.lang.String oauthRedirectUrl) { this.oauthRedirectUrl = oauthRedirectUrl; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOauthRefreshToken} * @param oauthRefreshToken Token for use with OAuth. * Setup and generation of the token is left to other tools. Should be used in conjunction with `oauth_client_id`, `oauth_client_secret`, `oauth_endpoint`, `oauth_redirect_url`. Cannot be used with `browser_auth`, `private_key_path`, `oauth_access_token` or `password`. Can also be sourced from `SNOWFLAKE_OAUTH_REFRESH_TOKEN` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#oauth_refresh_token SnowflakeProvider#oauth_refresh_token} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder oauthRefreshToken(java.lang.String oauthRefreshToken) { this.oauthRefreshToken = oauthRefreshToken; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOcspFailOpen} * @param ocspFailOpen True represents OCSP fail open mode. * False represents OCSP fail closed mode. Fail open true by default. Can also be sourced from the `SNOWFLAKE_OCSP_FAIL_OPEN` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#ocsp_fail_open SnowflakeProvider#ocsp_fail_open} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder ocspFailOpen(java.lang.Boolean ocspFailOpen) { this.ocspFailOpen = ocspFailOpen; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOcspFailOpen} * @param ocspFailOpen True represents OCSP fail open mode. * False represents OCSP fail closed mode. Fail open true by default. Can also be sourced from the `SNOWFLAKE_OCSP_FAIL_OPEN` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#ocsp_fail_open SnowflakeProvider#ocsp_fail_open} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder ocspFailOpen(com.hashicorp.cdktf.IResolvable ocspFailOpen) { this.ocspFailOpen = ocspFailOpen; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getOktaUrl} * @param oktaUrl The URL of the Okta server. e.g. https://example.okta.com. Can also be sourced from the SNOWFLAKE_OKTA_URL environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#okta_url SnowflakeProvider#okta_url} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder oktaUrl(java.lang.String oktaUrl) { this.oktaUrl = oktaUrl; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getParams} * @param params Sets other connection (i.e. session) parameters. Parameters. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#params SnowflakeProvider#params} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder params(java.util.Map params) { this.params = params; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getPasscode} * @param passcode Specifies the passcode provided by Duo when using multi-factor authentication (MFA) for login. * Can also be sourced from the `SNOWFLAKE_PASSCODE` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#passcode SnowflakeProvider#passcode} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder passcode(java.lang.String passcode) { this.passcode = passcode; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getPasscodeInPassword} * @param passcodeInPassword False by default. * Set to true if the MFA passcode is embedded in the login password. Appends the MFA passcode to the end of the password. Can also be sourced from the `SNOWFLAKE_PASSCODE_IN_PASSWORD` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#passcode_in_password SnowflakeProvider#passcode_in_password} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder passcodeInPassword(java.lang.Boolean passcodeInPassword) { this.passcodeInPassword = passcodeInPassword; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getPasscodeInPassword} * @param passcodeInPassword False by default. * Set to true if the MFA passcode is embedded in the login password. Appends the MFA passcode to the end of the password. Can also be sourced from the `SNOWFLAKE_PASSCODE_IN_PASSWORD` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#passcode_in_password SnowflakeProvider#passcode_in_password} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder passcodeInPassword(com.hashicorp.cdktf.IResolvable passcodeInPassword) { this.passcodeInPassword = passcodeInPassword; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getPassword} * @param password Password for username+password auth. * Cannot be used with `browser_auth` or `private_key_path`. Can also be sourced from the `SNOWFLAKE_PASSWORD` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#password SnowflakeProvider#password} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder password(java.lang.String password) { this.password = password; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getPort} * @param port Support custom port values to snowflake go driver for use with privatelink. * Can also be sourced from the `SNOWFLAKE_PORT` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#port SnowflakeProvider#port} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder port(java.lang.Number port) { this.port = port; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getPrivateKey} * @param privateKey Private Key for username+private-key auth. * Cannot be used with `browser_auth` or `password`. Can also be sourced from `SNOWFLAKE_PRIVATE_KEY` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#private_key SnowflakeProvider#private_key} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder privateKey(java.lang.String privateKey) { this.privateKey = privateKey; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getPrivateKeyPassphrase} * @param privateKeyPassphrase Supports the encryption ciphers aes-128-cbc, aes-128-gcm, aes-192-cbc, aes-192-gcm, aes-256-cbc, aes-256-gcm, and des-ede3-cbc. * Can also be sourced from `SNOWFLAKE_PRIVATE_KEY_PASSPHRASE` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#private_key_passphrase SnowflakeProvider#private_key_passphrase} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder privateKeyPassphrase(java.lang.String privateKeyPassphrase) { this.privateKeyPassphrase = privateKeyPassphrase; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getPrivateKeyPath} * @param privateKeyPath Path to a private key for using keypair authentication. * Cannot be used with `browser_auth`, `oauth_access_token` or `password`. Can also be sourced from `SNOWFLAKE_PRIVATE_KEY_PATH` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#private_key_path SnowflakeProvider#private_key_path} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder privateKeyPath(java.lang.String privateKeyPath) { this.privateKeyPath = privateKeyPath; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getProfile} * @param profile Sets the profile to read from ~/.snowflake/config file. Can also be sourced from the SNOWFLAKE_PROFILE environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#profile SnowflakeProvider#profile} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder profile(java.lang.String profile) { this.profile = profile; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getProtocol} * @param protocol Either http or https, defaults to https. Can also be sourced from the SNOWFLAKE_PROTOCOL environment variable. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#protocol SnowflakeProvider#protocol} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder protocol(java.lang.String protocol) { this.protocol = protocol; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getRegion} * @param region Snowflake region, such as "eu-central-1", with this parameter. * However, since this parameter is deprecated, it is best to specify the region as part of the account parameter. For details, see the description of the account parameter. [Snowflake region](https://docs.snowflake.com/en/user-guide/intro-regions.html) to use. Required if using the [legacy format for the `account` identifier](https://docs.snowflake.com/en/user-guide/admin-account-identifier.html#format-2-legacy-account-locator-in-a-region) in the form of `.`. Can also be sourced from the `SNOWFLAKE_REGION` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#region SnowflakeProvider#region} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder region(java.lang.String region) { this.region = region; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getRequestTimeout} * @param requestTimeout request retry timeout EXCLUDING network roundtrip and read out http response. * Can also be sourced from the `SNOWFLAKE_REQUEST_TIMEOUT` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#request_timeout SnowflakeProvider#request_timeout} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder requestTimeout(java.lang.Number requestTimeout) { this.requestTimeout = requestTimeout; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getRole} * @param role Specifies the role to use by default for accessing Snowflake objects in the client session. * Can also be sourced from the `SNOWFLAKE_ROLE` environment variable. . * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#role SnowflakeProvider#role} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder role(java.lang.String role) { this.role = role; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getSessionParams} * @param sessionParams Sets session parameters. Parameters. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#session_params SnowflakeProvider#session_params} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder sessionParams(java.util.Map sessionParams) { this.sessionParams = sessionParams; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getToken} * @param token Token to use for OAuth and other forms of token based auth. * Can also be sourced from the `SNOWFLAKE_TOKEN` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#token SnowflakeProvider#token} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder token(java.lang.String token) { this.token = token; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getTokenAccessor} * @param tokenAccessor token_accessor block. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#token_accessor SnowflakeProvider#token_accessor} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder tokenAccessor(com.hashicorp.cdktf.providers.snowflake.provider.SnowflakeProviderTokenAccessor tokenAccessor) { this.tokenAccessor = tokenAccessor; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getUser} * @param user Username. Can also be sourced from the SNOWFLAKE_USER environment variable. Required unless using profile. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#user SnowflakeProvider#user} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder user(java.lang.String user) { this.user = user; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getUsername} * @param username Username for username+password authentication. Can also be sourced from the SNOWFLAKE_USERNAME environment variable. Required unless using profile. * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#username SnowflakeProvider#username} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder username(java.lang.String username) { this.username = username; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getValidateDefaultParameters} * @param validateDefaultParameters True by default. * If false, disables the validation checks for Database, Schema, Warehouse and Role at the time a connection is established. Can also be sourced from the `SNOWFLAKE_VALIDATE_DEFAULT_PARAMETERS` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#validate_default_parameters SnowflakeProvider#validate_default_parameters} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder validateDefaultParameters(java.lang.Boolean validateDefaultParameters) { this.validateDefaultParameters = validateDefaultParameters; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getValidateDefaultParameters} * @param validateDefaultParameters True by default. * If false, disables the validation checks for Database, Schema, Warehouse and Role at the time a connection is established. Can also be sourced from the `SNOWFLAKE_VALIDATE_DEFAULT_PARAMETERS` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#validate_default_parameters SnowflakeProvider#validate_default_parameters} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder validateDefaultParameters(com.hashicorp.cdktf.IResolvable validateDefaultParameters) { this.validateDefaultParameters = validateDefaultParameters; return this; } /** * Sets the value of {@link SnowflakeProviderConfig#getWarehouse} * @param warehouse Specifies the virtual warehouse to use by default for queries, loading, etc. * in the client session. Can also be sourced from the `SNOWFLAKE_WAREHOUSE` environment variable. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/snowflake-labs/snowflake/0.94.1/docs#warehouse SnowflakeProvider#warehouse} * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder warehouse(java.lang.String warehouse) { this.warehouse = warehouse; return this; } /** * Builds the configured instance. * @return a new instance of {@link SnowflakeProviderConfig} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public SnowflakeProviderConfig build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link SnowflakeProviderConfig} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements SnowflakeProviderConfig { private final java.lang.String account; private final java.lang.String alias; private final java.lang.String authenticator; private final java.lang.Object browserAuth; private final java.lang.String clientIp; private final java.lang.Object clientRequestMfaToken; private final java.lang.Object clientStoreTemporaryCredential; private final java.lang.Number clientTimeout; private final java.lang.Object disableQueryContextCache; private final java.lang.Object disableTelemetry; private final java.lang.Number externalBrowserTimeout; private final java.lang.String host; private final java.lang.Object insecureMode; private final java.lang.Number jwtClientTimeout; private final java.lang.Number jwtExpireTimeout; private final java.lang.Object keepSessionAlive; private final java.lang.Number loginTimeout; private final java.lang.String oauthAccessToken; private final java.lang.String oauthClientId; private final java.lang.String oauthClientSecret; private final java.lang.String oauthEndpoint; private final java.lang.String oauthRedirectUrl; private final java.lang.String oauthRefreshToken; private final java.lang.Object ocspFailOpen; private final java.lang.String oktaUrl; private final java.util.Map params; private final java.lang.String passcode; private final java.lang.Object passcodeInPassword; private final java.lang.String password; private final java.lang.Number port; private final java.lang.String privateKey; private final java.lang.String privateKeyPassphrase; private final java.lang.String privateKeyPath; private final java.lang.String profile; private final java.lang.String protocol; private final java.lang.String region; private final java.lang.Number requestTimeout; private final java.lang.String role; private final java.util.Map sessionParams; private final java.lang.String token; private final com.hashicorp.cdktf.providers.snowflake.provider.SnowflakeProviderTokenAccessor tokenAccessor; private final java.lang.String user; private final java.lang.String username; private final java.lang.Object validateDefaultParameters; private final java.lang.String warehouse; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.account = software.amazon.jsii.Kernel.get(this, "account", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.alias = software.amazon.jsii.Kernel.get(this, "alias", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.authenticator = software.amazon.jsii.Kernel.get(this, "authenticator", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.browserAuth = software.amazon.jsii.Kernel.get(this, "browserAuth", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.clientIp = software.amazon.jsii.Kernel.get(this, "clientIp", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.clientRequestMfaToken = software.amazon.jsii.Kernel.get(this, "clientRequestMfaToken", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.clientStoreTemporaryCredential = software.amazon.jsii.Kernel.get(this, "clientStoreTemporaryCredential", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.clientTimeout = software.amazon.jsii.Kernel.get(this, "clientTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.disableQueryContextCache = software.amazon.jsii.Kernel.get(this, "disableQueryContextCache", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.disableTelemetry = software.amazon.jsii.Kernel.get(this, "disableTelemetry", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.externalBrowserTimeout = software.amazon.jsii.Kernel.get(this, "externalBrowserTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.host = software.amazon.jsii.Kernel.get(this, "host", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.insecureMode = software.amazon.jsii.Kernel.get(this, "insecureMode", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.jwtClientTimeout = software.amazon.jsii.Kernel.get(this, "jwtClientTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.jwtExpireTimeout = software.amazon.jsii.Kernel.get(this, "jwtExpireTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.keepSessionAlive = software.amazon.jsii.Kernel.get(this, "keepSessionAlive", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.loginTimeout = software.amazon.jsii.Kernel.get(this, "loginTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.oauthAccessToken = software.amazon.jsii.Kernel.get(this, "oauthAccessToken", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.oauthClientId = software.amazon.jsii.Kernel.get(this, "oauthClientId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.oauthClientSecret = software.amazon.jsii.Kernel.get(this, "oauthClientSecret", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.oauthEndpoint = software.amazon.jsii.Kernel.get(this, "oauthEndpoint", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.oauthRedirectUrl = software.amazon.jsii.Kernel.get(this, "oauthRedirectUrl", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.oauthRefreshToken = software.amazon.jsii.Kernel.get(this, "oauthRefreshToken", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.ocspFailOpen = software.amazon.jsii.Kernel.get(this, "ocspFailOpen", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.oktaUrl = software.amazon.jsii.Kernel.get(this, "oktaUrl", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.params = software.amazon.jsii.Kernel.get(this, "params", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.passcode = software.amazon.jsii.Kernel.get(this, "passcode", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.passcodeInPassword = software.amazon.jsii.Kernel.get(this, "passcodeInPassword", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.password = software.amazon.jsii.Kernel.get(this, "password", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.port = software.amazon.jsii.Kernel.get(this, "port", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.privateKey = software.amazon.jsii.Kernel.get(this, "privateKey", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.privateKeyPassphrase = software.amazon.jsii.Kernel.get(this, "privateKeyPassphrase", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.privateKeyPath = software.amazon.jsii.Kernel.get(this, "privateKeyPath", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.profile = software.amazon.jsii.Kernel.get(this, "profile", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.protocol = software.amazon.jsii.Kernel.get(this, "protocol", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.region = software.amazon.jsii.Kernel.get(this, "region", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.requestTimeout = software.amazon.jsii.Kernel.get(this, "requestTimeout", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.role = software.amazon.jsii.Kernel.get(this, "role", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.sessionParams = software.amazon.jsii.Kernel.get(this, "sessionParams", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.token = software.amazon.jsii.Kernel.get(this, "token", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.tokenAccessor = software.amazon.jsii.Kernel.get(this, "tokenAccessor", software.amazon.jsii.NativeType.forClass(com.hashicorp.cdktf.providers.snowflake.provider.SnowflakeProviderTokenAccessor.class)); this.user = software.amazon.jsii.Kernel.get(this, "user", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.username = software.amazon.jsii.Kernel.get(this, "username", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.validateDefaultParameters = software.amazon.jsii.Kernel.get(this, "validateDefaultParameters", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.warehouse = software.amazon.jsii.Kernel.get(this, "warehouse", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.account = builder.account; this.alias = builder.alias; this.authenticator = builder.authenticator; this.browserAuth = builder.browserAuth; this.clientIp = builder.clientIp; this.clientRequestMfaToken = builder.clientRequestMfaToken; this.clientStoreTemporaryCredential = builder.clientStoreTemporaryCredential; this.clientTimeout = builder.clientTimeout; this.disableQueryContextCache = builder.disableQueryContextCache; this.disableTelemetry = builder.disableTelemetry; this.externalBrowserTimeout = builder.externalBrowserTimeout; this.host = builder.host; this.insecureMode = builder.insecureMode; this.jwtClientTimeout = builder.jwtClientTimeout; this.jwtExpireTimeout = builder.jwtExpireTimeout; this.keepSessionAlive = builder.keepSessionAlive; this.loginTimeout = builder.loginTimeout; this.oauthAccessToken = builder.oauthAccessToken; this.oauthClientId = builder.oauthClientId; this.oauthClientSecret = builder.oauthClientSecret; this.oauthEndpoint = builder.oauthEndpoint; this.oauthRedirectUrl = builder.oauthRedirectUrl; this.oauthRefreshToken = builder.oauthRefreshToken; this.ocspFailOpen = builder.ocspFailOpen; this.oktaUrl = builder.oktaUrl; this.params = builder.params; this.passcode = builder.passcode; this.passcodeInPassword = builder.passcodeInPassword; this.password = builder.password; this.port = builder.port; this.privateKey = builder.privateKey; this.privateKeyPassphrase = builder.privateKeyPassphrase; this.privateKeyPath = builder.privateKeyPath; this.profile = builder.profile; this.protocol = builder.protocol; this.region = builder.region; this.requestTimeout = builder.requestTimeout; this.role = builder.role; this.sessionParams = builder.sessionParams; this.token = builder.token; this.tokenAccessor = builder.tokenAccessor; this.user = builder.user; this.username = builder.username; this.validateDefaultParameters = builder.validateDefaultParameters; this.warehouse = builder.warehouse; } @Override public final java.lang.String getAccount() { return this.account; } @Override public final java.lang.String getAlias() { return this.alias; } @Override public final java.lang.String getAuthenticator() { return this.authenticator; } @Override public final java.lang.Object getBrowserAuth() { return this.browserAuth; } @Override public final java.lang.String getClientIp() { return this.clientIp; } @Override public final java.lang.Object getClientRequestMfaToken() { return this.clientRequestMfaToken; } @Override public final java.lang.Object getClientStoreTemporaryCredential() { return this.clientStoreTemporaryCredential; } @Override public final java.lang.Number getClientTimeout() { return this.clientTimeout; } @Override public final java.lang.Object getDisableQueryContextCache() { return this.disableQueryContextCache; } @Override public final java.lang.Object getDisableTelemetry() { return this.disableTelemetry; } @Override public final java.lang.Number getExternalBrowserTimeout() { return this.externalBrowserTimeout; } @Override public final java.lang.String getHost() { return this.host; } @Override public final java.lang.Object getInsecureMode() { return this.insecureMode; } @Override public final java.lang.Number getJwtClientTimeout() { return this.jwtClientTimeout; } @Override public final java.lang.Number getJwtExpireTimeout() { return this.jwtExpireTimeout; } @Override public final java.lang.Object getKeepSessionAlive() { return this.keepSessionAlive; } @Override public final java.lang.Number getLoginTimeout() { return this.loginTimeout; } @Override public final java.lang.String getOauthAccessToken() { return this.oauthAccessToken; } @Override public final java.lang.String getOauthClientId() { return this.oauthClientId; } @Override public final java.lang.String getOauthClientSecret() { return this.oauthClientSecret; } @Override public final java.lang.String getOauthEndpoint() { return this.oauthEndpoint; } @Override public final java.lang.String getOauthRedirectUrl() { return this.oauthRedirectUrl; } @Override public final java.lang.String getOauthRefreshToken() { return this.oauthRefreshToken; } @Override public final java.lang.Object getOcspFailOpen() { return this.ocspFailOpen; } @Override public final java.lang.String getOktaUrl() { return this.oktaUrl; } @Override public final java.util.Map getParams() { return this.params; } @Override public final java.lang.String getPasscode() { return this.passcode; } @Override public final java.lang.Object getPasscodeInPassword() { return this.passcodeInPassword; } @Override public final java.lang.String getPassword() { return this.password; } @Override public final java.lang.Number getPort() { return this.port; } @Override public final java.lang.String getPrivateKey() { return this.privateKey; } @Override public final java.lang.String getPrivateKeyPassphrase() { return this.privateKeyPassphrase; } @Override public final java.lang.String getPrivateKeyPath() { return this.privateKeyPath; } @Override public final java.lang.String getProfile() { return this.profile; } @Override public final java.lang.String getProtocol() { return this.protocol; } @Override public final java.lang.String getRegion() { return this.region; } @Override public final java.lang.Number getRequestTimeout() { return this.requestTimeout; } @Override public final java.lang.String getRole() { return this.role; } @Override public final java.util.Map getSessionParams() { return this.sessionParams; } @Override public final java.lang.String getToken() { return this.token; } @Override public final com.hashicorp.cdktf.providers.snowflake.provider.SnowflakeProviderTokenAccessor getTokenAccessor() { return this.tokenAccessor; } @Override public final java.lang.String getUser() { return this.user; } @Override public final java.lang.String getUsername() { return this.username; } @Override public final java.lang.Object getValidateDefaultParameters() { return this.validateDefaultParameters; } @Override public final java.lang.String getWarehouse() { return this.warehouse; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getAccount() != null) { data.set("account", om.valueToTree(this.getAccount())); } if (this.getAlias() != null) { data.set("alias", om.valueToTree(this.getAlias())); } if (this.getAuthenticator() != null) { data.set("authenticator", om.valueToTree(this.getAuthenticator())); } if (this.getBrowserAuth() != null) { data.set("browserAuth", om.valueToTree(this.getBrowserAuth())); } if (this.getClientIp() != null) { data.set("clientIp", om.valueToTree(this.getClientIp())); } if (this.getClientRequestMfaToken() != null) { data.set("clientRequestMfaToken", om.valueToTree(this.getClientRequestMfaToken())); } if (this.getClientStoreTemporaryCredential() != null) { data.set("clientStoreTemporaryCredential", om.valueToTree(this.getClientStoreTemporaryCredential())); } if (this.getClientTimeout() != null) { data.set("clientTimeout", om.valueToTree(this.getClientTimeout())); } if (this.getDisableQueryContextCache() != null) { data.set("disableQueryContextCache", om.valueToTree(this.getDisableQueryContextCache())); } if (this.getDisableTelemetry() != null) { data.set("disableTelemetry", om.valueToTree(this.getDisableTelemetry())); } if (this.getExternalBrowserTimeout() != null) { data.set("externalBrowserTimeout", om.valueToTree(this.getExternalBrowserTimeout())); } if (this.getHost() != null) { data.set("host", om.valueToTree(this.getHost())); } if (this.getInsecureMode() != null) { data.set("insecureMode", om.valueToTree(this.getInsecureMode())); } if (this.getJwtClientTimeout() != null) { data.set("jwtClientTimeout", om.valueToTree(this.getJwtClientTimeout())); } if (this.getJwtExpireTimeout() != null) { data.set("jwtExpireTimeout", om.valueToTree(this.getJwtExpireTimeout())); } if (this.getKeepSessionAlive() != null) { data.set("keepSessionAlive", om.valueToTree(this.getKeepSessionAlive())); } if (this.getLoginTimeout() != null) { data.set("loginTimeout", om.valueToTree(this.getLoginTimeout())); } if (this.getOauthAccessToken() != null) { data.set("oauthAccessToken", om.valueToTree(this.getOauthAccessToken())); } if (this.getOauthClientId() != null) { data.set("oauthClientId", om.valueToTree(this.getOauthClientId())); } if (this.getOauthClientSecret() != null) { data.set("oauthClientSecret", om.valueToTree(this.getOauthClientSecret())); } if (this.getOauthEndpoint() != null) { data.set("oauthEndpoint", om.valueToTree(this.getOauthEndpoint())); } if (this.getOauthRedirectUrl() != null) { data.set("oauthRedirectUrl", om.valueToTree(this.getOauthRedirectUrl())); } if (this.getOauthRefreshToken() != null) { data.set("oauthRefreshToken", om.valueToTree(this.getOauthRefreshToken())); } if (this.getOcspFailOpen() != null) { data.set("ocspFailOpen", om.valueToTree(this.getOcspFailOpen())); } if (this.getOktaUrl() != null) { data.set("oktaUrl", om.valueToTree(this.getOktaUrl())); } if (this.getParams() != null) { data.set("params", om.valueToTree(this.getParams())); } if (this.getPasscode() != null) { data.set("passcode", om.valueToTree(this.getPasscode())); } if (this.getPasscodeInPassword() != null) { data.set("passcodeInPassword", om.valueToTree(this.getPasscodeInPassword())); } if (this.getPassword() != null) { data.set("password", om.valueToTree(this.getPassword())); } if (this.getPort() != null) { data.set("port", om.valueToTree(this.getPort())); } if (this.getPrivateKey() != null) { data.set("privateKey", om.valueToTree(this.getPrivateKey())); } if (this.getPrivateKeyPassphrase() != null) { data.set("privateKeyPassphrase", om.valueToTree(this.getPrivateKeyPassphrase())); } if (this.getPrivateKeyPath() != null) { data.set("privateKeyPath", om.valueToTree(this.getPrivateKeyPath())); } if (this.getProfile() != null) { data.set("profile", om.valueToTree(this.getProfile())); } if (this.getProtocol() != null) { data.set("protocol", om.valueToTree(this.getProtocol())); } if (this.getRegion() != null) { data.set("region", om.valueToTree(this.getRegion())); } if (this.getRequestTimeout() != null) { data.set("requestTimeout", om.valueToTree(this.getRequestTimeout())); } if (this.getRole() != null) { data.set("role", om.valueToTree(this.getRole())); } if (this.getSessionParams() != null) { data.set("sessionParams", om.valueToTree(this.getSessionParams())); } if (this.getToken() != null) { data.set("token", om.valueToTree(this.getToken())); } if (this.getTokenAccessor() != null) { data.set("tokenAccessor", om.valueToTree(this.getTokenAccessor())); } if (this.getUser() != null) { data.set("user", om.valueToTree(this.getUser())); } if (this.getUsername() != null) { data.set("username", om.valueToTree(this.getUsername())); } if (this.getValidateDefaultParameters() != null) { data.set("validateDefaultParameters", om.valueToTree(this.getValidateDefaultParameters())); } if (this.getWarehouse() != null) { data.set("warehouse", om.valueToTree(this.getWarehouse())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@cdktf/provider-snowflake.provider.SnowflakeProviderConfig")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; SnowflakeProviderConfig.Jsii$Proxy that = (SnowflakeProviderConfig.Jsii$Proxy) o; if (this.account != null ? !this.account.equals(that.account) : that.account != null) return false; if (this.alias != null ? !this.alias.equals(that.alias) : that.alias != null) return false; if (this.authenticator != null ? !this.authenticator.equals(that.authenticator) : that.authenticator != null) return false; if (this.browserAuth != null ? !this.browserAuth.equals(that.browserAuth) : that.browserAuth != null) return false; if (this.clientIp != null ? !this.clientIp.equals(that.clientIp) : that.clientIp != null) return false; if (this.clientRequestMfaToken != null ? !this.clientRequestMfaToken.equals(that.clientRequestMfaToken) : that.clientRequestMfaToken != null) return false; if (this.clientStoreTemporaryCredential != null ? !this.clientStoreTemporaryCredential.equals(that.clientStoreTemporaryCredential) : that.clientStoreTemporaryCredential != null) return false; if (this.clientTimeout != null ? !this.clientTimeout.equals(that.clientTimeout) : that.clientTimeout != null) return false; if (this.disableQueryContextCache != null ? !this.disableQueryContextCache.equals(that.disableQueryContextCache) : that.disableQueryContextCache != null) return false; if (this.disableTelemetry != null ? !this.disableTelemetry.equals(that.disableTelemetry) : that.disableTelemetry != null) return false; if (this.externalBrowserTimeout != null ? !this.externalBrowserTimeout.equals(that.externalBrowserTimeout) : that.externalBrowserTimeout != null) return false; if (this.host != null ? !this.host.equals(that.host) : that.host != null) return false; if (this.insecureMode != null ? !this.insecureMode.equals(that.insecureMode) : that.insecureMode != null) return false; if (this.jwtClientTimeout != null ? !this.jwtClientTimeout.equals(that.jwtClientTimeout) : that.jwtClientTimeout != null) return false; if (this.jwtExpireTimeout != null ? !this.jwtExpireTimeout.equals(that.jwtExpireTimeout) : that.jwtExpireTimeout != null) return false; if (this.keepSessionAlive != null ? !this.keepSessionAlive.equals(that.keepSessionAlive) : that.keepSessionAlive != null) return false; if (this.loginTimeout != null ? !this.loginTimeout.equals(that.loginTimeout) : that.loginTimeout != null) return false; if (this.oauthAccessToken != null ? !this.oauthAccessToken.equals(that.oauthAccessToken) : that.oauthAccessToken != null) return false; if (this.oauthClientId != null ? !this.oauthClientId.equals(that.oauthClientId) : that.oauthClientId != null) return false; if (this.oauthClientSecret != null ? !this.oauthClientSecret.equals(that.oauthClientSecret) : that.oauthClientSecret != null) return false; if (this.oauthEndpoint != null ? !this.oauthEndpoint.equals(that.oauthEndpoint) : that.oauthEndpoint != null) return false; if (this.oauthRedirectUrl != null ? !this.oauthRedirectUrl.equals(that.oauthRedirectUrl) : that.oauthRedirectUrl != null) return false; if (this.oauthRefreshToken != null ? !this.oauthRefreshToken.equals(that.oauthRefreshToken) : that.oauthRefreshToken != null) return false; if (this.ocspFailOpen != null ? !this.ocspFailOpen.equals(that.ocspFailOpen) : that.ocspFailOpen != null) return false; if (this.oktaUrl != null ? !this.oktaUrl.equals(that.oktaUrl) : that.oktaUrl != null) return false; if (this.params != null ? !this.params.equals(that.params) : that.params != null) return false; if (this.passcode != null ? !this.passcode.equals(that.passcode) : that.passcode != null) return false; if (this.passcodeInPassword != null ? !this.passcodeInPassword.equals(that.passcodeInPassword) : that.passcodeInPassword != null) return false; if (this.password != null ? !this.password.equals(that.password) : that.password != null) return false; if (this.port != null ? !this.port.equals(that.port) : that.port != null) return false; if (this.privateKey != null ? !this.privateKey.equals(that.privateKey) : that.privateKey != null) return false; if (this.privateKeyPassphrase != null ? !this.privateKeyPassphrase.equals(that.privateKeyPassphrase) : that.privateKeyPassphrase != null) return false; if (this.privateKeyPath != null ? !this.privateKeyPath.equals(that.privateKeyPath) : that.privateKeyPath != null) return false; if (this.profile != null ? !this.profile.equals(that.profile) : that.profile != null) return false; if (this.protocol != null ? !this.protocol.equals(that.protocol) : that.protocol != null) return false; if (this.region != null ? !this.region.equals(that.region) : that.region != null) return false; if (this.requestTimeout != null ? !this.requestTimeout.equals(that.requestTimeout) : that.requestTimeout != null) return false; if (this.role != null ? !this.role.equals(that.role) : that.role != null) return false; if (this.sessionParams != null ? !this.sessionParams.equals(that.sessionParams) : that.sessionParams != null) return false; if (this.token != null ? !this.token.equals(that.token) : that.token != null) return false; if (this.tokenAccessor != null ? !this.tokenAccessor.equals(that.tokenAccessor) : that.tokenAccessor != null) return false; if (this.user != null ? !this.user.equals(that.user) : that.user != null) return false; if (this.username != null ? !this.username.equals(that.username) : that.username != null) return false; if (this.validateDefaultParameters != null ? !this.validateDefaultParameters.equals(that.validateDefaultParameters) : that.validateDefaultParameters != null) return false; return this.warehouse != null ? this.warehouse.equals(that.warehouse) : that.warehouse == null; } @Override public final int hashCode() { int result = this.account != null ? this.account.hashCode() : 0; result = 31 * result + (this.alias != null ? this.alias.hashCode() : 0); result = 31 * result + (this.authenticator != null ? this.authenticator.hashCode() : 0); result = 31 * result + (this.browserAuth != null ? this.browserAuth.hashCode() : 0); result = 31 * result + (this.clientIp != null ? this.clientIp.hashCode() : 0); result = 31 * result + (this.clientRequestMfaToken != null ? this.clientRequestMfaToken.hashCode() : 0); result = 31 * result + (this.clientStoreTemporaryCredential != null ? this.clientStoreTemporaryCredential.hashCode() : 0); result = 31 * result + (this.clientTimeout != null ? this.clientTimeout.hashCode() : 0); result = 31 * result + (this.disableQueryContextCache != null ? this.disableQueryContextCache.hashCode() : 0); result = 31 * result + (this.disableTelemetry != null ? this.disableTelemetry.hashCode() : 0); result = 31 * result + (this.externalBrowserTimeout != null ? this.externalBrowserTimeout.hashCode() : 0); result = 31 * result + (this.host != null ? this.host.hashCode() : 0); result = 31 * result + (this.insecureMode != null ? this.insecureMode.hashCode() : 0); result = 31 * result + (this.jwtClientTimeout != null ? this.jwtClientTimeout.hashCode() : 0); result = 31 * result + (this.jwtExpireTimeout != null ? this.jwtExpireTimeout.hashCode() : 0); result = 31 * result + (this.keepSessionAlive != null ? this.keepSessionAlive.hashCode() : 0); result = 31 * result + (this.loginTimeout != null ? this.loginTimeout.hashCode() : 0); result = 31 * result + (this.oauthAccessToken != null ? this.oauthAccessToken.hashCode() : 0); result = 31 * result + (this.oauthClientId != null ? this.oauthClientId.hashCode() : 0); result = 31 * result + (this.oauthClientSecret != null ? this.oauthClientSecret.hashCode() : 0); result = 31 * result + (this.oauthEndpoint != null ? this.oauthEndpoint.hashCode() : 0); result = 31 * result + (this.oauthRedirectUrl != null ? this.oauthRedirectUrl.hashCode() : 0); result = 31 * result + (this.oauthRefreshToken != null ? this.oauthRefreshToken.hashCode() : 0); result = 31 * result + (this.ocspFailOpen != null ? this.ocspFailOpen.hashCode() : 0); result = 31 * result + (this.oktaUrl != null ? this.oktaUrl.hashCode() : 0); result = 31 * result + (this.params != null ? this.params.hashCode() : 0); result = 31 * result + (this.passcode != null ? this.passcode.hashCode() : 0); result = 31 * result + (this.passcodeInPassword != null ? this.passcodeInPassword.hashCode() : 0); result = 31 * result + (this.password != null ? this.password.hashCode() : 0); result = 31 * result + (this.port != null ? this.port.hashCode() : 0); result = 31 * result + (this.privateKey != null ? this.privateKey.hashCode() : 0); result = 31 * result + (this.privateKeyPassphrase != null ? this.privateKeyPassphrase.hashCode() : 0); result = 31 * result + (this.privateKeyPath != null ? this.privateKeyPath.hashCode() : 0); result = 31 * result + (this.profile != null ? this.profile.hashCode() : 0); result = 31 * result + (this.protocol != null ? this.protocol.hashCode() : 0); result = 31 * result + (this.region != null ? this.region.hashCode() : 0); result = 31 * result + (this.requestTimeout != null ? this.requestTimeout.hashCode() : 0); result = 31 * result + (this.role != null ? this.role.hashCode() : 0); result = 31 * result + (this.sessionParams != null ? this.sessionParams.hashCode() : 0); result = 31 * result + (this.token != null ? this.token.hashCode() : 0); result = 31 * result + (this.tokenAccessor != null ? this.tokenAccessor.hashCode() : 0); result = 31 * result + (this.user != null ? this.user.hashCode() : 0); result = 31 * result + (this.username != null ? this.username.hashCode() : 0); result = 31 * result + (this.validateDefaultParameters != null ? this.validateDefaultParameters.hashCode() : 0); result = 31 * result + (this.warehouse != null ? this.warehouse.hashCode() : 0); return result; } } }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy