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) extends BaseDecoder[T]
Inherited from:
Decoders
case class JdbcEncoder[T](sqlType: Int, encoder: () => T) extends BaseEncoder[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 type RunActionReturningResult[T] = T
Inherited from:
JdbcContext
override type RunBatchActionResult = List[Long]
Inherited from:
JdbcContext
override type RunBatchActionReturningResult[T] = List[T]
Inherited from:
JdbcContext
override type RunQueryResult[T] = List[T]
Inherited from:
JdbcContext
override type RunQuerySingleResult[T] = T
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 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 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 parameters:
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
Inherited from:
JdbcContextVerbPrepare
def prepareBatchAction(groups: List[BatchGroup])(executionInfo: ExecutionInfo, dc: Runner): PrepareBatchActionResult
Inherited from:
JdbcContextVerbPrepare
@tailrec
final protected def prepareParam(param: Any): String
Inherited from:
ContextTranslateProto
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 -> 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]
Inherited from:
JdbcContextVerbExecute
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 val bigDecimalDecoder: JdbcDecoder[BigDecimal]
Inherited from:
Decoders
implicit val bigDecimalEncoder: JdbcEncoder[BigDecimal]
Inherited from:
Encoders
implicit val booleanDecoder: JdbcDecoder[Boolean]
Inherited from:
BooleanObjectEncoding
implicit val booleanEncoder: JdbcEncoder[Boolean]
Inherited from:
BooleanObjectEncoding
implicit val byteArrayDecoder: JdbcDecoder[Array[Byte]]
Inherited from:
Decoders
implicit val byteArrayEncoder: JdbcEncoder[Array[Byte]]
Inherited from:
Encoders
implicit val byteDecoder: JdbcDecoder[Byte]
Inherited from:
Decoders
implicit val byteEncoder: JdbcEncoder[Byte]
Inherited from:
Encoders
implicit val dateDecoder: JdbcDecoder[Date]
Inherited from:
Decoders
implicit val dateEncoder: JdbcEncoder[Date]
Inherited from:
Encoders
implicit inline def dec[T]: GenericDecoder[ResultRow, Session, T, Generic]
Inherited from:
Context
implicit val doubleDecoder: JdbcDecoder[Double]
Inherited from:
Decoders
implicit val doubleEncoder: JdbcEncoder[Double]
Inherited from:
Encoders
implicit val floatDecoder: JdbcDecoder[Float]
Inherited from:
Decoders
implicit val floatEncoder: JdbcEncoder[Float]
Inherited from:
Encoders
implicit val intDecoder: JdbcDecoder[Int]
Inherited from:
Decoders
implicit val intEncoder: JdbcEncoder[Int]
Inherited from:
Encoders
implicit val localDateDecoder: JdbcDecoder[LocalDate]
Inherited from:
Decoders
implicit val localDateEncoder: JdbcEncoder[LocalDate]
Inherited from:
Encoders
implicit val localDateTimeDecoder: JdbcDecoder[LocalDateTime]
Inherited from:
Decoders
implicit val localDateTimeEncoder: JdbcEncoder[LocalDateTime]
Inherited from:
Encoders
implicit val longDecoder: JdbcDecoder[Long]
Inherited from:
Decoders
implicit val longEncoder: JdbcEncoder[Long]
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 val shortDecoder: JdbcDecoder[Short]
Inherited from:
Decoders
implicit val shortEncoder: JdbcEncoder[Short]
Inherited from:
Encoders
implicit val stringDecoder: JdbcDecoder[String]
Inherited from:
Decoders
implicit val stringEncoder: JdbcEncoder[String]
Inherited from:
Encoders
implicit val uuidDecoder: JdbcDecoder[UUID]
Inherited from:
UUIDObjectEncoding
implicit val uuidEncoder: JdbcEncoder[UUID]
Inherited from:
UUIDObjectEncoding