Class

com.datasift.dropwizard.scala.jdbi

JDBIWrapper

Related Doc: package jdbi

Permalink

class JDBIWrapper extends AnyRef

Provides idiomatic Scala enhancements to the JDBI API.

Examples -

dbi.open[DAO] to open a handle and attach a new sql object of the specified type to that handle

dbi.daoFor[DAO] to create a new sql object which will obtain and release connections from this dbi instance, as it needs to, and can, respectively

When in scope, you can create transactions using for comprehension. For instance -

 for { handle <- dbi.transaction
      dao1   <- handle.attachable[Dao1]
       ...
      daoN   <- handle.attachable[DaoN] } yield {

      dao1.some_function()
      ...
      daoN.some_other_function()
}
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JDBIWrapper
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. def daoFor[T](implicit arg0: ClassTag[T]): T

    Permalink

    Creates an on-demand typed DAO instance.

    Creates an on-demand typed DAO instance.

    T

    type of the DAO to create.

    returns

    an on-demand DAO instance for the specified type.

  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  11. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  12. def inTransaction[A](f: (Handle) ⇒ A): A

    Permalink

    Executes the given function within a transaction.

    Executes the given function within a transaction.

    A

    the return type of the function to execute.

    f

    the function to execute within the transaction.

    returns

    the result of the function.

    Exceptions thrown

    Exception if an Exception is thrown by the function, the transaction will be rolled-back.

  13. def inTransaction[A](f: (Handle, TransactionStatus) ⇒ A): A

    Permalink

    Executes the given function within a transaction.

    Executes the given function within a transaction.

    A

    the return type of the function to execute.

    f

    the function to execute within the transaction.

    returns

    the result of the function.

    Exceptions thrown

    Exception if an Exception is thrown by the function, the transaction will be rolled-back.

  14. def inTransactionWithIsolation[A](isolation: TransactionIsolationLevel)(f: (Handle, TransactionStatus) ⇒ A): A

    Permalink

    Executes the given function within a transaction of the given isolation level.

    Executes the given function within a transaction of the given isolation level. This method has been added to break the ambiguity of the methods above.

    A

    the return type of the function to execute.

    isolation

    the isolation level for the transaction.

    f

    the function to execute within the transaction.

    returns

    the result of the function.

    Exceptions thrown

    Exception if an Exception is thrown by the function, the transaction will be rolled-back.

  15. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. def open[T](implicit arg0: ClassTag[T]): T

    Permalink

    Creates a typed DAO instance.

    Creates a typed DAO instance.

    T

    type of the DAO to create.

    returns

    a DAO instance for the specified type.

  20. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  21. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  22. def transaction: JDBITransactionWrapper

    Permalink

    Extends this DBI to support for-comprehensions for transactions.

  23. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. def withHandle[A](f: (Handle) ⇒ A): A

    Permalink

    Applies the given function with a DBI org.skife.jdbi.v2.Handle.

    Applies the given function with a DBI org.skife.jdbi.v2.Handle.

    A

    the return type of the function to apply.

    f

    the function to apply the handle to.

    returns

    the result of applying the function.

    Exceptions thrown

    Exception if an Exception is thrown by the function.

Deprecated Value Members

  1. def inTransaction[A](isolation: TransactionIsolationLevel)(f: (Handle) ⇒ A): A

    Permalink

    Executes the given function within a transaction of the given isolation level.

    Executes the given function within a transaction of the given isolation level.

    A

    the return type of the function to execute.

    isolation

    the isolation level for the transaction.

    f

    the function to execute within the transaction.

    returns

    the result of the function.

    Deprecated

    This method cannot be called. See https://issues.scala-lang.org/browse/SI-8021 Use JDBIWrapper#inTransactionWithIsolation.

    Exceptions thrown

    Exception if an Exception is thrown by the function, the transaction will be rolled-back.

  2. def inTransaction[A](isolation: TransactionIsolationLevel)(f: (Handle, TransactionStatus) ⇒ A): A

    Permalink

    Executes the given function within a transaction of the given isolation level.

    Executes the given function within a transaction of the given isolation level.

    A

    the return type of the function to execute.

    isolation

    the isolation level for the transaction.

    f

    the function to execute within the transaction.

    returns

    the result of the function.

    Deprecated

    This method cannot be called. See https://issues.scala-lang.org/browse/SI-8021 Use JDBIWrapper#inTransactionWithIsolation.

    Exceptions thrown

    Exception if an Exception is thrown by the function, the transaction will be rolled-back.

Inherited from AnyRef

Inherited from Any

Ungrouped