## Uses of Class
net.snowflake.client.core.SnowflakeJdbcInternalApi

Packages that use SnowflakeJdbcInternalApi
net.snowflake.client.config
net.snowflake.client.core
net.snowflake.client.core.arrow
net.snowflake.client.core.arrow.tostringhelpers
net.snowflake.client.core.auth
net.snowflake.client.core.auth.oauth
net.snowflake.client.core.auth.wif
net.snowflake.client.core.json
net.snowflake.client.core.structs
net.snowflake.client.jdbc
net.snowflake.client.jdbc.cloud.storage
net.snowflake.client.jdbc.diagnostic
net.snowflake.client.jdbc.telemetryOOB
net.snowflake.client.log
net.snowflake.client.util

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.config

Classes in net.snowflake.client.config with annotations of type SnowflakeJdbcInternalApi
`class` `ConnectionParameters`
`class` `SFConnectionConfigParser`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.core

Classes in net.snowflake.client.core with annotations of type SnowflakeJdbcInternalApi
`class` `ArrowSqlInput`
`class` `BaseSqlInput`
`class` `CancellationReason`
`class` `ColumnTypeHelper`
`class` `FieldSchemaCreator`
`class` `FileUtil`
`class` `JsonSqlInput`
`class` `JsonSqlOutput`
`class` `PrivateLinkDetector`
`class` `SecurityUtil`
`static class` `SessionUtilExternalBrowser.DefaultAuthExternalBrowserHandlers`
`class` `SFOauthLoginInput`
`class` `SfSqlArray`
`interface` `SFSqlInput` This interface extends the standard `SQLInput` interface to provide additional methods.
`class` `SfTimestampUtil`

Fields in net.snowflake.client.core with annotations of type SnowflakeJdbcInternalApi
`protected Converters` SFArrowResultSet.`converters`
`static int` ObjectMapperFactory.`DEFAULT_MAX_JSON_STRING_LEN`
`static String` ObjectMapperFactory.`MAX_JSON_STRING_LENGTH_JVM`

Methods in net.snowflake.client.core with annotations of type SnowflakeJdbcInternalApi
`static void` AssertUtil.`assertTrue​(boolean condition, String internalErrorMesg)` Assert the condition is true, otherwise throw an internal error exception with the given message.
`void` SFBaseStatement.`cancel​(CancellationReason cancellationReason)` Aborts the statement.
`protected Date` SFBaseResultSet.`convertStringToDate​(String object, TimeZone tz)`
`protected Time` SFBaseResultSet.`convertStringToTime​(String object, int scale)`
`protected Timestamp` SFBaseResultSet.`convertStringToTimestamp​(String object, int columnType, int columnSubType, TimeZone tz, int scale)`
`Date` SFArrowResultSet.`convertToDate​(Object object, TimeZone tz)`
`Date` SFBaseResultSet.`convertToDate​(Object object, TimeZone tz)`
`Date` SFJsonResultSet.`convertToDate​(Object object, TimeZone tz)`
`Time` SFArrowResultSet.`convertToTime​(Object object, int scale)`
`Time` SFBaseResultSet.`convertToTime​(Object object, int scale)`
`Time` SFJsonResultSet.`convertToTime​(Object object, int scale)`
`Timestamp` SFArrowResultSet.`convertToTimestamp​(Object object, int columnType, int columnSubType, TimeZone tz, int scale)`
`Timestamp` SFBaseResultSet.`convertToTimestamp​(Object object, int columnType, int columnSubType, TimeZone tz, int scale)`
`Timestamp` SFJsonResultSet.`convertToTimestamp​(Object object, int columnType, int columnSubType, TimeZone tz, int scale)`
`protected SQLInput` SFBaseResultSet.`createJsonSqlInputForColumn​(Object input, SFBaseSession session, List<FieldMetadata> fields)`
`SQLInput` SFArrowResultSet.`createSqlInputForColumn​(Object input, Class<?> parentObjectClass, int columnIndex, SFBaseSession session, List<FieldMetadata> fields)`
`SQLInput` SFBaseResultSet.`createSqlInputForColumn​(Object input, Class<?> parentObjectClass, int columnIndex, SFBaseSession session, List<FieldMetadata> fields)`
`SQLInput` SFJsonResultSet.`createSqlInputForColumn​(Object input, Class<?> parentObjectClass, int columnIndex, SFBaseSession session, List<FieldMetadata> fields)`
`static void` SessionUtil.`deleteOAuthAccessTokenCache​(String host, String user)` Delete the Oauth access token cache
`static void` SessionUtil.`deleteOAuthRefreshTokenCache​(String host, String user)` Delete the Oauth refresh token cache
`static String` HttpUtil.`executeGeneralRequest​(org.apache.http.client.methods.HttpRequestBase httpRequest, int retryTimeout, int authTimeout, int socketTimeout, int retryCount, HttpClientSettingsKey ocspAndProxyAndGzipKey, RetryContextManager retryContextManager)` Executes an HTTP request for Snowflake.
`static String` HttpUtil.`executeGeneralRequestOmitRequestGuid​(org.apache.http.client.methods.HttpRequestBase httpRequest, int retryTimeout, int authTimeout, int socketTimeout, int retryCount, HttpClientSettingsKey ocspAndProxyAndGzipKey)`
`String` SFSession.`getAccessToken()`
`int` SFLoginInput.`getAuthTimeout()`
`boolean` SFBaseSession.`getClearBatchOnlyAfterSuccessfulExecution()`
`List<FieldMetadata>` SFResultSetMetaData.`getColumnFields​(int column)`
`static Duration` HttpUtil.`getConnectionTimeout()`
`Converters` SFArrowResultSet.`getConverters()`
`Converters` SFBaseResultSet.`getConverters()`
`Converters` SFJsonResultSet.`getConverters()`
`String` SFLoginInput.`getDPoPPublicKey()`
`HttpClientSettingsKey` SFLoginInput.`getHttpClientSettingsKey()`
`protected SfSqlArray` SFBaseResultSet.`getJsonArray​(String arrayString, int columnIndex)`
`int` SFLoginInput.`getLoginTimeout()`
`String` ExecTimeTelemetryData.`getLogString()`
`SFOauthLoginInput` SFLoginInput.`getOauthLoginInput()`
`String` SFLoginInput.`getOauthRefreshToken()`
`Object` SFArrowResultSet.`getObjectWithoutString​(int columnIndex)`
`abstract Object` SFBaseResultSet.`getObjectWithoutString​(int columnIndex)`
`Object` SFJsonResultSet.`getObjectWithoutString​(int columnIndex)`
`String` HttpClientSettingsKey.`getProxyPassword()` Be careful of using this! Should only be called when password is later masked.
`static String` URLUtil.`getRequestId​(URI uri)`
`static String` URLUtil.`getRequestIdLogStr​(URI uri)`
`TimeZone` SFBaseResultSet.`getSessionTimeZone()`
`static Duration` HttpUtil.`getSocketTimeout()`
`int` SFLoginInput.`getSocketTimeoutInMillis()`
`boolean` SFLoginInput.`isDPoPEnabled()`
`void` SFSession.`overrideConsoleHandlerWhenNecessary()`
`static void` HttpUtil.`setConnectionTimeout​(int timeout)`
`void` SFLoginInput.`setDPoPEnabled​(boolean dpopEnabled)`
`SFLoginInput` SFLoginInput.`setHttpClientSettingsKey​(HttpClientSettingsKey key)`
`SFLoginInput` SFLoginInput.`setOauthLoginInput​(SFOauthLoginInput oauthLoginInput)`
`SFLoginInput` SFLoginInput.`setServerUrl​(String serverUrl)`
`static void` HttpUtil.`setSocketTimeout​(int timeout)`
`SFLoginInput` SFLoginInput.`setSocketTimeout​(Duration socketTimeout)`

Constructors in net.snowflake.client.core with annotations of type SnowflakeJdbcInternalApi
`SFLoginInput()`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.core.arrow

Classes in net.snowflake.client.core.arrow with annotations of type SnowflakeJdbcInternalApi
`class` `ArrowVectorConverterUtil`
`class` `StructConverter`
`class` `StructObjectWrapper`
`class` `StructuredTypeDateTimeConverter`

Methods in net.snowflake.client.core.arrow with annotations of type SnowflakeJdbcInternalApi
`static Timestamp` BigIntToTimestampLTZConverter.`getTimestamp​(long epoch, int scale, TimeZone sessionTimeZone, boolean useSessionTimezone)`
`static Timestamp` ArrowResultUtil.`toJavaTimestamp​(long epoch, int scale, TimeZone sessionTimezone, boolean useSessionTimezone)` generate Java Timestamp object

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.core.arrow.tostringhelpers

Classes in net.snowflake.client.core.arrow.tostringhelpers with annotations of type SnowflakeJdbcInternalApi
`class` `ArrowArrayStringRepresentationBuilder`
`class` `ArrowObjectStringRepresentationBuilder`
`class` `ArrowStringRepresentationBuilderBase` StringBuilder like class to aggregate the string representation of snowflake Native ARROW structured types as JSON one-liners.

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.core.auth

Classes in net.snowflake.client.core.auth with annotations of type SnowflakeJdbcInternalApi
`class` `AuthenticatorType`
`class` `ClientAuthnDTO`
`class` `ClientAuthnParameter`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.core.auth.oauth

Classes in net.snowflake.client.core.auth.oauth with annotations of type SnowflakeJdbcInternalApi
`interface` `AccessTokenProvider`
`class` `DPoPUtil`
`class` `OAuthAccessTokenForRefreshTokenProvider`
`class` `OAuthAccessTokenProviderFactory`
`class` `OAuthAuthorizationCodeAccessTokenProvider`
`class` `OAuthClientCredentialsAccessTokenProvider`
`class` `RandomStateProvider`
`interface` `StateProvider<T>`
`class` `TokenResponseDTO`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.core.auth.wif

Classes in net.snowflake.client.core.auth.wif with annotations of type SnowflakeJdbcInternalApi
`class` `AwsAttestationService`
`class` `AwsIdentityAttestationCreator`
`class` `AzureAttestationService`
`class` `AzureIdentityAttestationCreator`
`class` `GcpIdentityAttestationCreator`
`class` `OidcIdentityAttestationCreator`
`class` `WorkloadIdentityAttestation`
`class` `WorkloadIdentityAttestationProvider`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.core.json

Methods in net.snowflake.client.core.json with annotations of type SnowflakeJdbcInternalApi
`Converter` Converters.`arrayConverter​(com.fasterxml.jackson.databind.ObjectMapper objectMapper)`
`Converter` Converters.`bigDecimalConverter​(int columnType)`
`Converter` Converters.`bigIntConverter​(int columnType)`
`Converter` Converters.`booleanConverter​(int columnType)`
`Converter` Converters.`bytesConverter​(int columnType, int scale)`
`Converter` Converters.`dateFromIntConverter​(TimeZone tz)`
`Converter` Converters.`dateStringConverter​(SFBaseSession session)`
`Converter` Converters.`doubleConverter​(int columnType)`
`Converter` Converters.`floatConverter​(int columnType)`
`Converter` Converters.`integerConverter​(int columnType)`
`Converter` Converters.`longConverter​(int columnType)`
`Converter` Converters.`smallIntConverter​(int columnType)`
`Converter` Converters.`structConverter​(com.fasterxml.jackson.databind.ObjectMapper objectMapper)`
`Converter` Converters.`timeFromStringConverter​(SFBaseSession session)`
`Converter` Converters.`timestampFromStringConverter​(int columnSubType, int columnType, int scale, SFBaseSession session, TimeZone tz, TimeZone sessionTimezone)`
`Converter` Converters.`tinyIntConverter​(int columnType)`
`Converter` Converters.`varcharConverter​(int columnType, int columnSubType, int scale)`

Constructors in net.snowflake.client.core.json with annotations of type SnowflakeJdbcInternalApi
`Converters​(SFBaseSession session, SnowflakeResultSetSerializableV1 resultSetSerializable)`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.core.structs

Classes in net.snowflake.client.core.structs with annotations of type SnowflakeJdbcInternalApi
`class` `SnowflakeObjectTypeFactories`
`class` `SQLDataCreationHelper`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.jdbc

Classes in net.snowflake.client.jdbc with annotations of type SnowflakeJdbcInternalApi
`class` `ColumnTypeInfo`
`class` `EnvironmentVariables`
`class` `RetryContext` RetryContext stores information about an ongoing request's retrying process.
`class` `RetryContextManager` RetryContextManager lets you register logic (as callbacks) that will be re-executed during a retry of a request.
`class` `SnowflakeRichResultSetSerializableV1`
`static class` `SnowflakeRichResultSetSerializableV1.SnowflakeRichResultsColumnMetadata`
`class` `SnowflakeUseDPoPNonceException`

Methods in net.snowflake.client.jdbc with annotations of type SnowflakeJdbcInternalApi
`Connection` SnowflakeDriver.`connect()` Connect method using connection configuration file
`static boolean` SnowflakeUtil.`convertSystemGetEnvToBooleanValue​(String envVariableKey, boolean defaultValue)` Helper function to convert environment variable to boolean
`static boolean` SnowflakeUtil.`convertSystemPropertyToBooleanValue​(String systemProperty, boolean defaultValue)` Helper function to convert system properties to boolean
`static Map<String,​String>` SnowflakeUtil.`createCaseInsensitiveMap​(Map<String,​String> input)` Method introduced to avoid inconsistencies in custom headers handling, since these are defined on drivers side e.g.
`static Map<String,​String>` SnowflakeUtil.`createCaseInsensitiveMap​(org.apache.http.Header[] headers)` toCaseInsensitiveMap, but adjusted to Headers[] argument type
`static SnowflakeResultSetSerializableV1` SnowflakeResultSetSerializableV1.`createWithChunksPrefetchDisabled​(com.fasterxml.jackson.databind.JsonNode rootNode, SFBaseSession sfSession, SFBaseStatement sfStatement)` A factory function for internal usage only.
`int` SnowflakeColumnMetadata.`getDimension()`
`List<FieldMetadata>` SnowflakeColumnMetadata.`getFields()`
`static SnowflakeType.JavaDataType` SnowflakeType.`getJavaType​(SnowflakeType type, boolean isStructuredType)`
`static boolean` SnowflakeUtil.`isWindows()` Check whether the OS is Windows
`static SnowflakeType` SnowflakeUtil.`javaTypeToSFType​(int javaType, SFBaseSession session)`
`static <T> T` SnowflakeUtil.`mapSFExceptionToSQLException​(ThrowingCallable<T,​SFException> action)`
`void` SnowflakeColumnMetadata.`setFields​(List<FieldMetadata> fields)`

Constructors in net.snowflake.client.jdbc with annotations of type SnowflakeJdbcInternalApi
`FieldMetadata()`
`SnowflakeColumnMetadata​(com.fasterxml.jackson.databind.JsonNode colNode, boolean jdbcTreatDecimalAsInt, SFBaseSession session)`
`SnowflakeColumnMetadata​(String name, int type, boolean nullable, int length, int precision, int scale, String typeName, boolean fixed, SnowflakeType base, List<FieldMetadata> fields, String columnSrcDatabase, String columnSrcSchema, String columnSrcTable, boolean isAutoIncrement, int dimension)`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.jdbc.cloud.storage

Classes in net.snowflake.client.jdbc.cloud.storage with annotations of type SnowflakeJdbcInternalApi
`class` `S3HttpUtil`

Fields in net.snowflake.client.jdbc.cloud.storage with annotations of type SnowflakeJdbcInternalApi
`static String` SnowflakeGCSClient.`DISABLE_GCS_DEFAULT_CREDENTIALS_PROPERTY_NAME`

Methods in net.snowflake.client.jdbc.cloud.storage with annotations of type SnowflakeJdbcInternalApi
`default void` SnowflakeStorageClient.`addEncryptionMetadataForGcm​(StorageObjectMetadata meta, MatDesc matDesc, byte[] encryptedKey, byte[] dataIvBytes, byte[] keyIvBytes, byte[] keyAad, byte[] dataAad, long contentLength)` Adds encryption metadata to the StorageObjectMetadata object for AES-GCM/AES-GCM
`Optional<String>` StageInfo.`gcsCustomEndpoint()`
`boolean` StageInfo.`getUseRegionalUrl()`
`void` StageInfo.`setUseRegionalUrl​(boolean useRegionalUrl)`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.jdbc.diagnostic

Classes in net.snowflake.client.jdbc.diagnostic with annotations of type SnowflakeJdbcInternalApi
`class` `DiagnosticContext`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.jdbc.telemetryOOB

Methods in net.snowflake.client.jdbc.telemetryOOB with annotations of type SnowflakeJdbcInternalApi
`static void` TelemetryService.`disableOOBTelemetry()`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.log

Classes in net.snowflake.client.log with annotations of type SnowflakeJdbcInternalApi
`class` `CommonsLoggingWrapper` This is a wrapper class of apache commons logging which uses SFLogger to use driver configuration (via java.util.logging or SLF4J) and mask secrets.

Methods in net.snowflake.client.log with annotations of type SnowflakeJdbcInternalApi
`static <T> String` SFLoggerUtil.`isVariableProvided​(T variable)`
`static void` JDK14Logger.`useStdOutConsoleHandler​(String threshold)`

### Uses of SnowflakeJdbcInternalApi in net.snowflake.client.util

Classes in net.snowflake.client.util with annotations of type SnowflakeJdbcInternalApi
`interface` `Converter<T>` Functional interface used to convert data to expected type
`class` `Stopwatch` Stopwatch class used to calculate the time between start and stop.
`interface` `ThrowingBiCallable<A,​B,​T extends Throwable>`
`interface` `ThrowingBiFunction<A,​B,​R,​T extends Throwable>`
`interface` `ThrowingCallable<A,​T extends Throwable>`
`interface` `ThrowingFunction<A,​R,​T extends Throwable>`
`interface` `ThrowingTriCallable<A,​B,​C,​T extends Throwable>`
`interface` `ThrowingTriFunction<A,​B,​C,​R,​T extends Throwable>`
`class` `TimeMeasurement` Class keeping the start and stop time in epoch microseconds.

Methods in net.snowflake.client.util with annotations of type SnowflakeJdbcInternalApi
`static String` SecretDetector.`filterOAuthTokens​(String text)` Masks any secrets present in the OAuth token request JSON response.