Permalink
Commits on Sep 9, 2016
  1. Add simple DSL for ResultSet mapping to object (#14)

    - Contains a new `SimpleMapper` that extends the jdbi `ResultSetMapper` aimed at simplifying object creation from `ResultSet`
    - Contains a new `ResultSetDSL` that works on (`ResultSet`, `ColumnName`) tuples to create objects. See comments in code.
    jairamc committed with nicktelford Sep 9, 2016
  2. Support for-comprehensions for DBI transactions (#2)

    This allows for the following DSL which should make working with multiple DAOs
    inside a transaction simpler:
    
         for { handle <- dbi.transaction
               dao1   <- handle.attachable[Dao1]
               ...
               daoN   <- handle.attachable[DaoN] } yield {
    
              dao1.some_function()
              ...
              daoN.some_other_function()
         }
    mpitid committed with nicktelford Sep 9, 2016
Commits on Aug 16, 2016
  1. Set version to 1.0.0-1

    nicktelford committed Aug 16, 2016
Commits on Jul 12, 2016
  1. Add metrics module as dependency on core module

    The metrics module was always meant to be automatically included by the
    core module, it's exclusion was an oversight. The only optional module
    was meant to be jdbi.
    nicktelford committed Jul 12, 2016
Commits on May 20, 2016
  1. Fix ApplicationTest for singleton object apps

    When using an Application defined as a singleton object, the
    ApplicationTest couldn't be used, due to obnoxious types.
    
    This also has the bonus that it's now possible to let Scala's compiler
    infer the type arguments for ApplicationTest for you.
    nicktelford committed May 20, 2016
Commits on May 19, 2016
  1. Upgrade to Dropwizard 1.0.0-rc2

    Note: no release of dropwizard-scala will be made against an RC version
    of upstream Dropwizaed; this upgrade is just to help us prepare for the
    new API.
    nicktelford committed May 19, 2016
  2. Setting version to 0.9.2-2

    nicktelford committed May 19, 2016
  3. Upgrade to Dropwizard 0.9.2

    Includes workaround for jackson-scala bug involving paranamer.
    nicktelford committed May 19, 2016
  4. Setting version to 0.8.5-2

    nicktelford committed May 19, 2016
  5. Enable release signing

    Required to make releases with `sbt release`
    nicktelford committed May 19, 2016
  6. Setting version to 0.8.5-2

    nicktelford committed May 19, 2016
  7. Setting version to 0.8.5-2

    nicktelford committed May 19, 2016
  8. Fix build for releases

    nicktelford committed May 19, 2016
  9. Setting version to 0.8.6-1

    nicktelford committed May 19, 2016
  10. Setting version to 0.8.5-1

    nicktelford committed May 19, 2016
  11. Fix build for release

    nicktelford committed May 19, 2016
  12. Fix next version to 0.8.5-2

    nicktelford committed May 19, 2016
  13. Setting version to 0.8.6-1

    nicktelford committed May 19, 2016
  14. Fix sbt release tag name

    nicktelford committed May 19, 2016
  15. Setting version to 0.8.5-1

    nicktelford committed May 19, 2016
Commits on May 18, 2016
Commits on May 17, 2016
  1. Add BindProduct jDBI annotation

    Permits case classes and tuples to be used as parameters to queries;
    functions similarly to `@BindBean`.
    nicktelford committed May 17, 2016
  2. Add integration tests for jDBI support

    Includes testing of the `ApplicationTest`, `LiquibaseTest` and
    `MySQLTest` utilities.
    nicktelford committed May 17, 2016
  3. Add jDBI mapping of tuples and case classes

    SQL statements can now return case classes and tuples, with a few
    constraints:
    
      * selected columns must match up with constructor paramaters
        _positionally_.
      * only the first defined public constructor will be used if multiple
        constructors are defined.
      * paramater types must be directly mappable from their SQL types,
        without the use of a mapper. The only exceptions to this rule are
        `Option` and `scala.BigDecimal`, which are natively supported.
    nicktelford committed May 17, 2016
  4. Tweak LiquibaseTest defaults

    nicktelford committed May 17, 2016
Commits on May 12, 2016
  1. Add test utils for Application, MySQL, Liquibase

    Each utility class enables a test (using ScalaTest) to execute within
    the context of the utility. If multiple utilities are defined, they will
    be started and stopped in the order defined (just like Dropwizard's
    `Managed`), with the tests running within the context of all of them.
    
    See `ScalaApplicationSpecIT` in `core/test` for an example of their use.
    
    Note: the MySQL and Liquibase utilities provide an optional dependency.
    To use these, you will need to add an explicit dependency on either
    `mysql-mxj` or `dropwizard-migrations` to the `Test` configuration of
    your project.
    nicktelford committed May 12, 2016
  2. Add support for BigDecimal to JDBI

    Thanks to @ivanshaovchev for the initial implementation.
    nicktelford committed May 12, 2016
Commits on May 11, 2016
  1. Add Jersey support for Try and Either responses

    `Try[A]` will either:
    
      * return the result
      * yield the exception, if it is a `WebApplicationException`
      * yield an `InternalServerErrorException`, wrapping the exception.
    
    `Either[L, R]` will either:
    
      * return the right-side result
      * yield the exception, if the left-side is a `WebApplicationException`
      * yield an `InternalServerErrorException`, if the left-side is a
        `Throwable`.
      * yield the left-side
    
    _In that order._
    nicktelford committed May 11, 2016