JdbcMetadataQuerier

class JdbcMetadataQuerier(val constants: DefaultJdbcConstants, val config: JdbcSourceConfiguration, val selectQueryGenerator: SelectQueryGenerator, val fieldTypeMapper: JdbcMetadataQuerier.FieldTypeMapper, val checkQueries: JdbcCheckQueries, jdbcConnectionFactory: JdbcConnectionFactory) : MetadataQuerier

Default implementation of MetadataQuerier.

Constructors

Link copied to clipboard
constructor(constants: DefaultJdbcConstants, config: JdbcSourceConfiguration, selectQueryGenerator: SelectQueryGenerator, fieldTypeMapper: JdbcMetadataQuerier.FieldTypeMapper, checkQueries: JdbcCheckQueries, jdbcConnectionFactory: JdbcConnectionFactory)

Types

Link copied to clipboard
data class ColumnMetadata(val name: String, val label: String, val type: SourceDatabaseType, val nullable: Boolean? = null, val ordinal: Int? = null)
Link copied to clipboard
@Singleton
class Factory(val selectQueryGenerator: SelectQueryGenerator, val fieldTypeMapper: JdbcMetadataQuerier.FieldTypeMapper, val checkQueries: JdbcCheckQueries, val constants: DefaultJdbcConstants) : MetadataQuerier.Factory<JdbcSourceConfiguration>

Default implementation of MetadataQuerier.Factory.

Link copied to clipboard
fun interface FieldTypeMapper

Stateless connector-specific object for mapping a ColumnMetadata to a FieldType during DISCOVER.

Link copied to clipboard
data class PrimaryKeyRow(val name: String, val ordinal: Int, val columnName: String)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

memoizedUserDefinedTypes is not directly used by JdbcMetadataQuerier. Instead, it's provided for use by other MetadataQuerier implementations which delegate to this.

Link copied to clipboard

Functions

Link copied to clipboard
open override fun close()
Link copied to clipboard
open override fun extraChecks()
Link copied to clipboard
open override fun fields(streamID: StreamIdentifier): List<Field>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open override fun primaryKey(streamID: StreamIdentifier): List<List<String>>
Link copied to clipboard
fun selectLimit0(table: TableName, columnIDs: List<String>): String

Generates SQL query used to discover ColumnMetadata and to verify table access permissions.

Link copied to clipboard
open override fun streamNames(streamNamespace: String?): List<StreamIdentifier>
Link copied to clipboard
open override fun streamNamespaces(): List<String>
Link copied to clipboard
fun <T> swallow(supplier: () -> T): T?