H2JdbcContext

class H2JdbcContext[N <: NamingStrategy](val naming: N, val dataSource: DataSource & Closeable) extends JdbcContext[H2Dialect, N] with H2JdbcContextBase[N]
trait H2JdbcTypes[N]
class JdbcContext[H2Dialect, N]
trait ContextVerbTranslate[H2Dialect, N]
trait ContextTranslateMacro[H2Dialect, N]
trait ContextTranslateProto[H2Dialect, N]
trait JdbcContextBase[H2Dialect, N]
trait ContextVerbPrepareLambda[H2Dialect, N]
trait JdbcContextVerbPrepare[H2Dialect, N]
trait ContextVerbPrepare[H2Dialect, N]
trait JdbcContextVerbExecute[H2Dialect, N]
trait JdbcContextTypes[H2Dialect, N]
trait Decoders
trait Encoders
trait SqlContext[H2Dialect, N]
trait Context[H2Dialect, N]
trait Closeable
trait AutoCloseable
trait EncodingDsl
trait LowPriorityImplicits
trait ProtoContext[H2Dialect, N]
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
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 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
Inherited from
ContextTranslateMacro
type Session = Connection
Inherited from
JdbcContextTypes
override
type TranslateResult[T] = T
Inherited from
ContextVerbTranslate
override
type TranslateRunner = Unit
Inherited from
JdbcContext

Value members

Constructors

def this(naming: N, config: JdbcContextConfig)
def this(naming: N, config: Config)
def this(naming: N, configPrefix: String)

Inherited methods

Inherited from
ContextVerbPrepare

Internal API that cannot be made private due to how inline functions

Internal API that cannot be made private due to how inline functions

Inherited from
ContextTranslateMacro
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
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]]
def executeBatchActionReturning[T](groups: List[BatchGroupReturning], extractor: () => T)(info: ExecutionInfo, dc: Runner): Result[List[T]]
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]
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 parseJdbcType(intType: Int): String

Parses instances of java.sql.Types to string form so it can be used in creation of sql arrays. Some databases does not support each of generic types, hence it's welcome to override this method and provide alternatives to non-existent types.

Parses instances of java.sql.Types to string form so it can be used in creation of sql arrays. Some databases does not support each of generic types, hence it's welcome to override this method and provide alternatives to non-existent types.

Value Params
intType

one of java.sql.Types

Returns

JDBC type in string form

Inherited from
JdbcContextTypes
@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
def prepareBatchAction(groups: List[BatchGroup])(executionInfo: ExecutionInfo, dc: Runner): PrepareBatchActionResult
@tailrec
final protected
def prepareParam(param: Any): String
Inherited from
ContextTranslateProto
def prepareQuery(sql: String, prepare: Prepare)(executionInfo: ExecutionInfo, dc: Runner): PrepareQueryResult
def prepareSingle(sql: String, prepare: Prepare)(executionInfo: ExecutionInfo, dc: Runner): Connection => Result[PreparedStatement]
protected
def prepareWithReturning(sql: String, conn: Connection, returningBehavior: ReturnAction): PreparedStatement
def probe(sql: String): Try[Result[Boolean]]
Inherited from
JdbcContext
override
def push[A, B](result: A)(f: A => B): B
Definition Classes
JdbcContext -> ContextVerbTranslate -> ContextTranslateProto -> 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 -> ContextVerbTranslate -> ContextTranslateProto -> JdbcContextVerbPrepare -> JdbcContextVerbExecute
Inherited from
JdbcContext
def transaction[T](f: => T): Result[T]
Inherited from
JdbcContext
@targetName("translateBatchActionReturning")
inline
def translate[I, T, A <: Action[I] & QAC[I, T]](inline quoted: Quoted[BatchAction[A]], inline prettyPrint: Boolean): TranslateResult[List[String]]
Inherited from
ContextTranslateMacro
@targetName("translateBatchActionReturning")
inline
def translate[I, T, A <: Action[I] & QAC[I, T]](inline quoted: Quoted[BatchAction[A]]): TranslateResult[List[String]]
Inherited from
ContextTranslateMacro
@targetName("translateBatchAction")
inline
def translate[I, A <: Action[I] & QAC[I, Nothing]](inline quoted: Quoted[BatchAction[A]], inline prettyPrint: Boolean): TranslateResult[List[String]]
Inherited from
ContextTranslateMacro
@targetName("translateBatchAction")
inline
def translate[I, A <: Action[I] & QAC[I, Nothing]](inline quoted: Quoted[BatchAction[A]]): TranslateResult[List[String]]
Inherited from
ContextTranslateMacro
@targetName("translateActionReturning")
inline
def translate[E, T](inline quoted: Quoted[ActionReturning[E, T]], inline prettyPrint: Boolean): TranslateResult[String]
Inherited from
ContextTranslateMacro
@targetName("translateActionReturning")
inline
def translate[E, T](inline quoted: Quoted[ActionReturning[E, T]]): TranslateResult[String]
Inherited from
ContextTranslateMacro
@targetName("translateAction")
inline
def translate[E](inline quoted: Quoted[Action[E]], inline prettyPrint: Boolean): TranslateResult[String]
Inherited from
ContextTranslateMacro
@targetName("translateAction")
inline
def translate[E](inline quoted: Quoted[Action[E]]): TranslateResult[String]
Inherited from
ContextTranslateMacro
@targetName("translateQuerySingle")
inline
def translate[T](inline quoted: Quoted[T], inline prettyPrint: Boolean): TranslateResult[String]
Inherited from
ContextTranslateMacro
@targetName("translateQuerySingle")
inline
def translate[T](inline quoted: Quoted[T]): TranslateResult[String]
Inherited from
ContextTranslateMacro
@targetName("translateQuery")
inline
def translate[T](inline quoted: Quoted[Query[T]], inline prettyPrint: Boolean): TranslateResult[String]
Inherited from
ContextTranslateMacro
@targetName("translateQuery")
inline
def translate[T](inline quoted: Quoted[Query[T]]): TranslateResult[String]
Inherited from
ContextTranslateMacro
def translateBatchQueryEndpoint(groups: List[BatchGroup], prettyPrint: Boolean)(executionInfo: ExecutionInfo, dc: TranslateRunner): TranslateResult[List[String]]
Inherited from
ContextTranslateProto
def translateBatchQueryReturningEndpoint(groups: List[BatchGroupReturning], prettyPrint: Boolean)(executionInfo: ExecutionInfo, dc: TranslateRunner): TranslateResult[List[String]]
Inherited from
ContextTranslateProto
def translateQueryEndpoint[T](statement: String, prepare: Prepare, extractor: () => T, prettyPrint: Boolean)(executionInfo: ExecutionInfo, dc: TranslateRunner): TranslateResult[String]
Inherited from
ContextTranslateProto
protected
def withConnection[T](f: Connection => Result[T]): Result[T]
Inherited from
JdbcContext
protected
def withConnectionWrapped[T](f: Connection => T): Result[T]
override
def wrap[T](t: => T): T
Definition Classes
JdbcContext -> ContextVerbTranslate -> ContextTranslateProto -> JdbcContextVerbPrepare -> JdbcContextVerbExecute
Inherited from
JdbcContext

Concrete fields

val dataSource: DataSource & Closeable
val naming: N

Inherited fields

protected
val currentConnection: DynamicVariable[Option[Connection]]
Inherited from
JdbcContext
protected
val dateTimeZone: TimeZone
Inherited from
JdbcContextTypes
Inherited from
RowContext
protected
val identityPrepare: Prepare
Inherited from
RowContext
val idiom: H2Dialect
Inherited from
H2JdbcTypes

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
Inherited from
Decoders
implicit
Inherited from
Encoders
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