abstract class JdbcConnectionProvider extends AnyRef
::DeveloperApi:: Connection provider which opens connection toward various databases (database specific instance needed). If any authentication required then it's the provider's responsibility to set all the parameters. Important to mention connection providers within a JVM used from multiple threads so adding internal state is not advised. If any state added then it must be synchronized properly.
- Annotations
- @DeveloperApi() @Unstable()
- Source
- JdbcConnectionProvider.scala
- Since
3.1.0
- Alphabetic
- By Inheritance
- JdbcConnectionProvider
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new JdbcConnectionProvider()
Abstract Value Members
- abstract def canHandle(driver: Driver, options: Map[String, String]): Boolean
Checks if this connection provider instance can handle the connection initiated by the driver.
Checks if this connection provider instance can handle the connection initiated by the driver. There must be exactly one active connection provider which can handle the connection for a specific driver. If this requirement doesn't met then
IllegalArgumentException
will be thrown by the provider framework.- driver
Java driver which initiates the connection
- options
Driver options which initiates the connection
- returns
True if the connection provider can handle the driver with the given options.
- abstract def getConnection(driver: Driver, options: Map[String, String]): Connection
Opens connection to the database.
Opens connection to the database. Since global JVM security configuration change may be needed this API is called synchronized by
SecurityConfigurationLock
to avoid race whenmodifiesSecurityContext
returns true for the given driver with the given options.- driver
Java driver which initiates the connection
- options
Driver options which initiates the connection
- returns
a
Connection
object that represents a connection to the URL
- abstract def modifiesSecurityContext(driver: Driver, options: Map[String, String]): Boolean
Checks if this connection provider instance needs to modify global security configuration to handle authentication and thus should synchronize access to the security configuration while the given driver is initiating a connection with the given options.
Checks if this connection provider instance needs to modify global security configuration to handle authentication and thus should synchronize access to the security configuration while the given driver is initiating a connection with the given options.
- driver
Java driver which initiates the connection
- options
Driver options which initiates the connection
- returns
True if the connection provider will need to modify the security configuration when initiating a connection with the given driver with the given options.
- Since
3.1.3
- abstract val name: String
Name of the service to provide JDBC connections.
Name of the service to provide JDBC connections. This name should be unique. Spark will internally use this name to differentiate JDBC connection providers.
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)