QuillPostgresContext

class QuillPostgresContext(dataSource: HikariDataSource) extends PostgresJdbcContext[SnakeCase] with RawCodecs[PostgresDialect, SnakeCase] with Migrator[PostgresDialect, SnakeCase]
trait Migrator[PostgresDialect, SnakeCase]
trait RawCodecs[PostgresDialect, SnakeCase]
class PostgresJdbcContext[SnakeCase]
trait PostgresJdbcContextBase[SnakeCase]
trait PostgresJdbcTypes[SnakeCase]
trait ArrayEncoders
trait ArrayDecoders
trait ArrayEncoding
trait UUIDObjectEncoding
trait BooleanObjectEncoding
class JdbcContext[PostgresDialect, SnakeCase]
trait JdbcContextBase[PostgresDialect, SnakeCase]
trait ContextVerbPrepareLamba[PostgresDialect, SnakeCase]
trait JdbcContextVerbPrepare[PostgresDialect, SnakeCase]
trait ContextVerbPrepare[PostgresDialect, SnakeCase]
trait JdbcContextVerbExecute[PostgresDialect, SnakeCase]
trait JdbcContextTypes[PostgresDialect, SnakeCase]
trait Decoders
trait Encoders
trait SqlContext[PostgresDialect, SnakeCase]
trait Context[PostgresDialect, SnakeCase]
trait Closeable
trait AutoCloseable
trait EncodingDsl
trait LowPriorityImplicits
trait ProtoContext[PostgresDialect, SnakeCase]
trait RowContext
class Object
trait Matchable
class Any

Type members

Inherited classlikes

case
class BatchGroup(string: String, prepare: List[Prepare])
Inherited from
RowContext
case
class BatchGroupReturning(string: String, returningBehavior: ReturnAction, prepare: List[Prepare])
Inherited from
RowContext
Inherited from
Migrator
Inherited from
Context
case
class JdbcDecoder[T](decoder: () => T)
Inherited from
Decoders
case
class JdbcEncoder[T](sqlType: Int, encoder: () => T)
Inherited from
Encoders

Inherited types

type BaseDecoder[T] = GenericDecoder[ResultRow, Session, T, Specific]
Inherited from
EncodingDsl
type BaseEncoder[T] = GenericEncoder[T, PrepareRow, Session]
Inherited from
EncodingDsl
type CBF[T, Col] = Factory[T, Col]
Inherited from
ArrayEncoding
type ColumnResolver = GenericColumnResolver[ResultRow]
Inherited from
EncodingDsl
type Decoder[T] = JdbcDecoder[T]
Inherited from
Decoders
type DecoderMethod[T] = (Int, ResultRow, Session) => T
Inherited from
EncodingDsl
type Encoder[T] = JdbcEncoder[T]
Inherited from
Encoders
type EncoderMethod[T] = (Int, T, PrepareRow, Session) => PrepareRow
Inherited from
EncodingDsl
type Extractor[T] = (ResultRow, Session) => T
Inherited from
RowContext
type Index = Int
Inherited from
JdbcContextTypes
type Prepare = (PrepareRow, Session) => (List[Any], PrepareRow)
Inherited from
RowContext
override
type PrepareActionResult = Connection => Result[PreparedStatement]
Inherited from
JdbcContextBase
override
type PrepareBatchActionResult = Connection => Result[List[PreparedStatement]]
Inherited from
JdbcContextBase
override
type PrepareQueryResult = Connection => Result[PreparedStatement]
Inherited from
JdbcContextBase
type PrepareRow = PreparedStatement
Inherited from
JdbcContextTypes
override
type Result[T] = T
Inherited from
JdbcContext
type ResultRow = ResultSet
Inherited from
JdbcContextTypes
type RowTyper[T] = GenericRowTyper[ResultRow, T]
Inherited from
EncodingDsl
override
type RunActionResult = Long
Inherited from
JdbcContext
override
Inherited from
JdbcContext
override
type RunBatchActionResult = List[Long]
Inherited from
JdbcContext
override
Inherited from
JdbcContext
override
type RunQueryResult[T] = List[T]
Inherited from
JdbcContext
override
Inherited from
JdbcContext
override
type Runner = Unit
Inherited from
JdbcContext
type RunnerBehavior <: RunnerSummoningBehavior

Base type used to determine whether there is an execution context that needs to be summoned to perform execution methods e.g. in the PostgresJasync contexts that use Scala Futures that need an ExecutionContext.

Base type used to determine whether there is an execution context that needs to be summoned to perform execution methods e.g. in the PostgresJasync contexts that use Scala Futures that need an ExecutionContext.

Inherited from
Context
type Session = Connection
Inherited from
JdbcContextTypes

Value members

Inherited methods

inline
def _summonPrepareRunner(): Runner
Inherited from
ContextVerbPrepare
def arrayDecoder[I, O, Col <: Seq[O]](mapper: I => O)(implicit bf: Factory[O, Col], tag: ClassTag[I]): JdbcDecoder[Col]

Generic encoder for JDBC arrays.

Generic encoder for JDBC arrays.

Type Params
Col

seq type

I

raw type retrieved form JDBC array

O

mapped type fulfilled in decoder's collection

Value Params
bf

builder factory is needed to create instances of decoder's collection

mapper

retrieved raw types fro JDBC array may be mapped via this mapper to satisfy encoder type

Returns

JDBC array decoder

Inherited from
ArrayDecoders
def arrayEncoder[T, Col <: Seq[T]](jdbcType: String, mapper: T => AnyRef): JdbcEncoder[Col]

Generic encoder for JDBC arrays.

Generic encoder for JDBC arrays.

Type Params
Col

seq type

T

element type

Value Params
jdbcType

JDBC specific type identification, may be various regarding to JDBC driver

mapper

jdbc array accepts AnyRef objects hence a mapper is needed. If input type of an element of collection is not comfortable with jdbcType then use this mapper to transform to appropriate type before casting to AnyRef

Returns

JDBC array encoder

Inherited from
ArrayEncoders
def arrayRawDecoder[T : ClassTag, Col <: Seq[T]](implicit evidence$1: ClassTag[T], bf: Factory[T, Col]): JdbcDecoder[Col]

Creates JDBC array decoder for type T which is already supported by database as array element.

Creates JDBC array decoder for type T which is already supported by database as array element.

Type Params
Col

seq type

T

element type

Value Params
bf

builder factory is needed to create instances of decoder's collection

Returns

JDBC array decoder

Inherited from
ArrayDecoders
def arrayRawEncoder[T, Col <: Seq[T]](jdbcType: Int): JdbcEncoder[Col]

Transform jdbcType int using parseJdbcType and calls overloaded method to create Encoder

Transform jdbcType int using parseJdbcType and calls overloaded method to create Encoder

Value Params
jdbcType

java.sql.Types

See also

arrayRawEncoder(jdbcType: String)

JdbcContext#parseJdbcType(jdbcType: String)

Inherited from
ArrayEncoders
def arrayRawEncoder[T, Col <: Seq[T]](jdbcType: String): JdbcEncoder[Col]

Creates JDBC array encoder for type T which is already supported by database as array element.

Creates JDBC array encoder for type T which is already supported by database as array element.

Type Params
Col

seq type

T

element type

Value Params
jdbcType

JDBC specific type identification, may be various regarding to JDBC driver

Returns

JDBC array encoder

Inherited from
ArrayEncoders
override
def close(): Unit
Definition Classes
JdbcContext -> Context -> Closeable -> AutoCloseable
Inherited from
JdbcContext
def constructPrepareAction(f: Connection => Result[PreparedStatement]): Connection => Result[PreparedStatement]
Inherited from
JdbcContextBase
def constructPrepareBatchAction(f: Connection => Result[List[PreparedStatement]]): Connection => Result[List[PreparedStatement]]
Inherited from
JdbcContextBase
def constructPrepareQuery(f: Connection => Result[PreparedStatement]): Connection => Result[PreparedStatement]
Inherited from
JdbcContextBase
override protected
def context: Runner
Definition Classes
JdbcContext -> Context
Inherited from
JdbcContext
def decoder[T](f: ResultRow => Index => T): JdbcDecoder[T]
Inherited from
Decoders
def decoder[T](d: (Int, ResultRow, Session) => T): JdbcDecoder[T]
Inherited from
Decoders
def encoder[T](sqlType: Int, f: PrepareRow => (Index, T) => Unit): JdbcEncoder[T]
Inherited from
Encoders
def encoder[T](sqlType: Int, f: (Index, T, PrepareRow) => Unit): JdbcEncoder[T]
Inherited from
Encoders
override
def executeAction(sql: String, prepare: Prepare)(info: ExecutionInfo, dc: Runner): Result[Long]
Definition Classes
JdbcContextVerbExecute -> ProtoContext
Inherited from
JdbcContextVerbExecute
override
def executeActionReturning[O](sql: String, prepare: Prepare, extractor: () => O, returningBehavior: ReturnAction)(info: ExecutionInfo, dc: Runner): Result[O]
Definition Classes
JdbcContextVerbExecute -> ProtoContext
Inherited from
JdbcContextVerbExecute
def executeBatchAction(groups: List[BatchGroup])(info: ExecutionInfo, dc: Runner): Result[List[Long]]
Inherited from
JdbcContextVerbExecute
def executeBatchActionReturning[T](groups: List[BatchGroupReturning], extractor: () => T)(info: ExecutionInfo, dc: Runner): Result[List[T]]
Inherited from
JdbcContextVerbExecute
override
def executeQuery[T](sql: String, prepare: Prepare, extractor: () => T)(info: ExecutionInfo, dc: Runner): Result[List[T]]
Definition Classes
JdbcContextVerbExecute -> ProtoContext
Inherited from
JdbcContextVerbExecute
override
def executeQuerySingle[T](sql: String, prepare: Prepare, extractor: () => T)(info: ExecutionInfo, dc: Runner): Result[T]
Definition Classes
JdbcContextVerbExecute -> ProtoContext
Inherited from
JdbcContextVerbExecute
protected
def handleSingleResult[T](list: List[T]): T
Inherited from
Context
protected
def handleSingleWrappedResult[T](list: Result[List[T]]): Result[T]
Inherited from
JdbcContextVerbExecute
inline
def lift[T](inline runtimeValue: T): T
Inherited from
Context
inline
def liftQuery[U <: ([_] =>> Iterable[_]), T](inline runtimeValue: U[T]): Query[T]
Inherited from
Context
protected
def mappedBaseDecoder[Base, Mapped](mapped: MappedEncoding[Base, Mapped], decoder: () => Base): () => Mapped
Inherited from
EncodingDsl
protected
def mappedBaseEncoder[Mapped, Base](mapped: MappedEncoding[Mapped, Base], encoder: () => Base): () => Mapped
Inherited from
EncodingDsl
def migrate[T](using t: Table[T]): Unit
Inherited from
Migrator
override
def parseJdbcType(intType: Int): String
Definition Classes
PostgresJdbcTypes -> JdbcContextTypes
Inherited from
PostgresJdbcTypes
@targetName("runPrepareBatchAction")
inline
def prepare[I, A <: Action[I] & QAC[I, Nothing]](inline quoted: Quoted[BatchAction[A]]): PrepareBatchActionResult
Inherited from
ContextVerbPrepare
@targetName("runPrepareAction")
inline
def prepare[E](inline quoted: Quoted[Action[E]]): PrepareActionResult
Inherited from
ContextVerbPrepare
@targetName("runPrepareQuerySingle")
inline
def prepare[T](inline quoted: Quoted[T]): PrepareQueryResult
Inherited from
ContextVerbPrepare
@targetName("runPrepareQuery")
inline
def prepare[T](inline quoted: Quoted[Query[T]]): PrepareQueryResult
Inherited from
ContextVerbPrepare
def prepareAction(sql: String, prepare: Prepare)(executionInfo: ExecutionInfo, dc: Runner): PrepareActionResult
Inherited from
JdbcContextVerbPrepare
def prepareBatchAction(groups: List[BatchGroup])(executionInfo: ExecutionInfo, dc: Runner): PrepareBatchActionResult
Inherited from
JdbcContextVerbPrepare
def prepareQuery(sql: String, prepare: Prepare)(executionInfo: ExecutionInfo, dc: Runner): PrepareQueryResult
Inherited from
JdbcContextVerbPrepare
def prepareSingle(sql: String, prepare: Prepare)(executionInfo: ExecutionInfo, dc: Runner): Connection => Result[PreparedStatement]
Inherited from
JdbcContextVerbPrepare
protected
def prepareWithReturning(sql: String, conn: Connection, returningBehavior: ReturnAction): PreparedStatement
Inherited from
JdbcContextVerbExecute
def probe(sql: String): Try[Result[Boolean]]
Inherited from
JdbcContext
override
def push[A, B](result: A)(f: A => B): B
Definition Classes
JdbcContext -> JdbcContextVerbPrepare -> JdbcContextVerbExecute
Inherited from
JdbcContext
@targetName("runBatchActionReturning")
inline
def run[I, T, A <: Action[I] & QAC[I, T]](inline quoted: Quoted[BatchAction[A]]): List[T]
Inherited from
JdbcContext
@targetName("runBatchAction")
inline
def run[I, A <: Action[I] & QAC[I, Nothing]](inline quoted: Quoted[BatchAction[A]]): List[Long]
Inherited from
JdbcContext
@targetName("runActionReturning")
inline
def run[E, T](inline quoted: Quoted[ActionReturning[E, T]]): T
Inherited from
JdbcContext
@targetName("runAction")
inline
def run[E](inline quoted: Quoted[Action[E]]): Long
Inherited from
JdbcContext
@targetName("runQuerySingle")
inline
def run[T](inline quoted: Quoted[T]): T
Inherited from
JdbcContext
@targetName("runQuery")
inline
def run[T](inline quoted: Quoted[Query[T]], inline wrap: OuterSelectWrap): List[T]
Inherited from
JdbcContext
@targetName("runQueryDefault")
inline
def run[T](inline quoted: Quoted[Query[T]]): List[T]
Inherited from
JdbcContext
override
def seq[A](list: List[A]): List[A]
Definition Classes
JdbcContext -> JdbcContextVerbPrepare -> JdbcContextVerbExecute
Inherited from
JdbcContext
def transaction[T](f: => T): Result[T]
Inherited from
JdbcContext
protected
def withConnection[T](f: Connection => Result[T]): Result[T]
Inherited from
JdbcContext
protected
def withConnectionWrapped[T](f: Connection => T): Result[T]
Inherited from
JdbcContextVerbExecute
override
def wrap[T](t: => T): T
Definition Classes
JdbcContext -> JdbcContextVerbPrepare -> JdbcContextVerbExecute
Inherited from
JdbcContext

Inherited fields

protected
val currentConnection: DynamicVariable[Option[Connection]]
Inherited from
JdbcContext
protected
val dateTimeZone: TimeZone
Inherited from
JdbcContextTypes
protected
val identityExtractor: (ResultRow, Session) => ResultRow
Inherited from
RowContext
protected
val identityPrepare: Prepare
Inherited from
RowContext
val idiom: PostgresDialect
Inherited from
PostgresJdbcTypes
val migratorLogger: Logger
Inherited from
Migrator
val naming: SnakeCase
Inherited from
PostgresJdbcContext

Extensions

Inherited extensions

extension [T](q: Query[T])
inline
def filterByKeys(inline map: Map[String, String]): Query[T]

When using this with FilterColumns make sure it comes FIRST. Otherwise the columns are you filtering may have been nullified in the SQL before the filteration has actually happened.

When using this with FilterColumns make sure it comes FIRST. Otherwise the columns are you filtering may have been nullified in the SQL before the filteration has actually happened.

Inherited from
Context
inline
def filterColumns(inline columns: List[String]): Query[T]
Inherited from
Context

Implicits

Inherited implicits

implicit inline
def anyValDecoder[Cls <: AnyVal]: JdbcDecoder[Cls]
Inherited from
LowPriorityImplicits
implicit inline
def anyValEncoder[Cls <: AnyVal]: JdbcEncoder[Cls]
Inherited from
LowPriorityImplicits
implicit
def arrayBigDecimalDecoder[Col <: Seq[BigDecimal]](implicit bf: Factory[BigDecimal, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayBigDecimalEncoder[Col <: Seq[BigDecimal]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayBooleanDecoder[Col <: Seq[Boolean]](implicit bf: Factory[Boolean, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayBooleanEncoder[Col <: Seq[Boolean]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayByteDecoder[Col <: Seq[Byte]](implicit bf: Factory[Byte, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayByteEncoder[Col <: Seq[Byte]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayDateDecoder[Col <: Seq[Date]](implicit bf: Factory[Date, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayDateEncoder[Col <: Seq[Date]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayDoubleDecoder[Col <: Seq[Double]](implicit bf: Factory[Double, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayDoubleEncoder[Col <: Seq[Double]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayFloatDecoder[Col <: Seq[Float]](implicit bf: Factory[Float, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayFloatEncoder[Col <: Seq[Float]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayIntDecoder[Col <: Seq[Int]](implicit bf: Factory[Int, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayIntEncoder[Col <: Seq[Int]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayLocalDateDecoder[Col <: Seq[LocalDate]](implicit bf: Factory[LocalDate, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayLocalDateEncoder[Col <: Seq[LocalDate]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayLongDecoder[Col <: Seq[Long]](implicit bf: Factory[Long, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayLongEncoder[Col <: Seq[Long]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayMappedDecoder[I, O, Col <: (Seq)](implicit mapped: MappedEncoding[I, O], d: JdbcDecoder[Seq[I]], bf: Factory[O, Col[O]]): JdbcDecoder[Col[O]]
Inherited from
ArrayEncoding
implicit
def arrayMappedEncoder[I, O, Col <: (Seq)](implicit mapped: MappedEncoding[I, O], e: JdbcEncoder[Seq[O]]): JdbcEncoder[Col[I]]
Inherited from
ArrayEncoding
implicit
def arrayShortDecoder[Col <: Seq[Short]](implicit bf: Factory[Short, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayShortEncoder[Col <: Seq[Short]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayStringDecoder[Col <: Seq[String]](implicit bf: Factory[String, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayStringEncoder[Col <: Seq[String]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
def arrayTimestampDecoder[Col <: Seq[Timestamp]](implicit bf: Factory[Timestamp, Col]): JdbcDecoder[Col]
Inherited from
ArrayDecoders
implicit
def arrayTimestampEncoder[Col <: Seq[Timestamp]]: JdbcEncoder[Col]
Inherited from
ArrayEncoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
Inherited from
RawCodecs
implicit
Inherited from
RawCodecs
implicit
Inherited from
BooleanObjectEncoding
implicit
Inherited from
BooleanObjectEncoding
implicit
val byteArrayDecoder: JdbcDecoder[Array[Byte]]
Inherited from
Decoders
implicit
val byteArrayEncoder: JdbcEncoder[Array[Byte]]
Inherited from
Encoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit inline
def dec[T]: GenericDecoder[ResultRow, Session, T, Generic]
Inherited from
Context
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
val localDateTimeDecoder: JdbcDecoder[LocalDateTime]
Inherited from
Decoders
implicit
val localDateTimeEncoder: JdbcEncoder[LocalDateTime]
Inherited from
Encoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
def mappedDecoder[I, O](implicit mapped: MappedEncoding[I, O], d: JdbcDecoder[I]): JdbcDecoder[O]
Inherited from
Decoders
implicit override
def mappedEncoder[I, O](implicit mapped: MappedEncoding[I, O], e: JdbcEncoder[O]): JdbcEncoder[I]
Definition Classes
Encoders -> EncodingDsl
Inherited from
Encoders
implicit
def optionDecoder[T](implicit d: JdbcDecoder[T]): JdbcDecoder[Option[T]]
Inherited from
Decoders
implicit
def optionEncoder[T](implicit d: JdbcEncoder[T]): JdbcEncoder[Option[T]]
Inherited from
Encoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
Inherited from
Decoders
implicit
Inherited from
Encoders
implicit
Inherited from
UUIDObjectEncoding
implicit
Inherited from
UUIDObjectEncoding
implicit
val zdD: JdbcDecoder[ZonedDateTime]
Inherited from
RawCodecs
implicit
val zdE: JdbcEncoder[ZonedDateTime]
Inherited from
RawCodecs