Object

acolyte.jdbc

AcolyteDSL

Related Doc: package jdbc

Permalink

object AcolyteDSL

Acolyte DSL for JDBC.

import acolyte.jdbc.AcolyteDSL.{ connection, handleStatement }
import acolyte.jdbc.Implicits._

connection {
  handleStatement.withQueryDetection("...").
    withQueryHandler({ e: QueryExecution => ... }).
    withUpdateHandler({ e: UpdateExecution => ... })
}
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. AcolyteDSL
  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 connection(h: ConnectionHandler, p: (String, String)*): Connection

    Permalink

    Creates a connection, managed with given handler.

    Creates a connection, managed with given handler.

    h

    connection handler

    p

    connection properties

    returns

    a new Acolyte connection

    connection(handler) // without connection properties
    // With connection property to fallback untyped null
    connection(handler, "acolyte.parameter.untypedNull" -> "true")
  7. def connection(h: AbstractCompositeHandler[_], p: (String, String)*): Connection

    Permalink

    Creates a connection, whose statement will be passed to given handler.

    Creates a connection, whose statement will be passed to given handler.

    h

    statement handler

    p

    connection properties

    returns

    a new Acolyte connection

    connection(handler) // without connection properties
    // With connection property to fallback untyped null
    connection(handler, "acolyte.parameter.untypedNull" -> "true")
  8. def debuging[A](printer: (QueryExecution) ⇒ Unit = x ⇒ println(s"Executed query: $x"))(f: (java.sql.Connection) ⇒ A): Unit

    Permalink

    Manages a scope to debug any JDBC execution

    Manages a scope to debug any JDBC execution

    printer

    the operation to print any QueryExecution that occurs within the scope of debuging.

    f

    the function working with the debug connection.

    import acolyte.jdbc.AcolyteDSL
    AcolyteDSL.debuging() { con =>
      val stmt = con.prepareStatement("SELECT * FROM Test WHERE id = ?")
      stmt.setString(1, "foo")
      stmt.executeQuery()
    }
    // print on stdout:
    "Executed query: QueryExecution(SELECT * FROM Test WHERE id = ?,List(Param(foo, VARCHAR)))"
  9. final def eq(arg0: AnyRef): Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  13. def handleQuery(h: (QueryExecution) ⇒ QueryResult): ScalaCompositeHandler

    Permalink

    Creates a new handler detecting all statements as queries (like handleStatement.withQueryDetection(".*").withQueryHandler(h)).

    Creates a new handler detecting all statements as queries (like handleStatement.withQueryDetection(".*").withQueryHandler(h)).

    import acolyte.jdbc.AcolyteDSL.{ connection, handleQuery }
    
    connection { handleQuery { _ => res }
  14. def handleStatement: ScalaCompositeHandler

    Permalink

    Creates an empty handler.

    Creates an empty handler.

    import acolyte.jdbc.AcolyteDSL.{ connection, handleStatement }
    
    connection { handleStatement }
  15. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

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

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

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

    Permalink
    Definition Classes
    AnyRef
  20. final def synchronized[T0](arg0: ⇒ T0): T0

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

    Permalink
    Definition Classes
    AnyRef → Any
  22. def updateResult(count: Int, keys: RowList[_]): UpdateResult

    Permalink

    Returns an update result with row |count| and generated |keys|.

    Returns an update result with row |count| and generated |keys|.

    count

    Updated (row) count

    keys

    Generated keys

    import acolyte.jdbc.AcolyteDSL.updateResult
    import acolyte.jdbc.RowLists
    updateResult(2/* updated rows */, RowLists.stringList("a", "b"))
  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 withQueryResult[A](res: QueryResult)(f: (java.sql.Connection) ⇒ A): A

    Permalink

    Executes |f| using connection accepting only queries, and answering with |result| to any query.

    Executes |f| using connection accepting only queries, and answering with |result| to any query.

    import acolyte.jdbc.AcolyteDSL.withQueryResult
    
    val str: String = withQueryResult(queryRes) { con => "str" }

Inherited from AnyRef

Inherited from Any

Ungrouped