# Package oracle.jdbc.spi

This package defines service provider interfaces (SPIs) that are consumed by the Oracle JDBC Driver. These interfaces are intended to have user defined implementations.

There are two general types of providers in this package:

`OracleConfigurationProvider`
  A provider of connection properties.
`OracleResourceProvider`
  A provider of individual resources.

More information about each provider can be found in their respective JavaDoc.

Since:
  23.3

Interface Summary
AccessTokenProvider: A provider of OAUTH access tokens that authorize logins to Oracle Database.
ConnectionStringProvider: A provider of connection strings for establishing a network connection to Oracle Database.
OracleConfigurationCachableProvider: The Cachable interface provides methods for caching objects.
OracleConfigurationJsonSecretProvider: Defines the contract for secret providers in a JSON Configuration.
OracleConfigurationProvider: Using the Service Provider Interface (SPI) abstraction, the Oracle JDBC driver can be configured using a configuration service provider.
OracleResourceProvider: A provider of resources that are consumed by the Oracle JDBC Driver.
OracleResourceProvider.Parameter: A parameter that configures an `OracleResourceProvider`.
PasswordProvider: A provider of passwords for authentication with Oracle Database.
TlsConfigurationProvider: A provider of keys and/or certificates for TLS communication with Oracle Database.
TraceEventListenerProvider: A provider of listeners for application and system tracing events.
UsernameProvider: A provider of usernames for authentication with Oracle Database.