Skip to content

Commit

Permalink
Merge pull request #66 from takezoe/config_translation
Browse files Browse the repository at this point in the history
(refs #65) Config translation for basic jdbc connection settings
  • Loading branch information
megazord committed May 5, 2015
2 parents 972321d + 97b1487 commit c33ebc3
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 3 deletions.
6 changes: 3 additions & 3 deletions app/com/edulify/play/hikaricp/HikariCPConfig.scala
Expand Up @@ -30,7 +30,7 @@ object HikariCPConfig {
case None => Logger.debug("`dataSourceClassName` not present. Will use `jdbcUrl` instead.")
}

config.getString("jdbcUrl") match {
config.getString("jdbcUrl").orElse(config.getString("url")) match {
case Some(jdbcUrl) => hikariConfig.setJdbcUrl(jdbcUrl)
case None => Logger.debug("`jdbcUrl` not present. Pool configured from `databaseUrl`.")
}
Expand All @@ -55,10 +55,10 @@ object HikariCPConfig {
}
}

config.getString("username").foreach(hikariConfig.setUsername)
config.getString("username").orElse(config.getString("user")).foreach(hikariConfig.setUsername)
config.getString("password").foreach(hikariConfig.setPassword)

config.getString("driverClassName").foreach(hikariConfig.setDriverClassName)
config.getString("driverClassName").orElse(config.getString("driver")).foreach(hikariConfig.setDriverClassName)

// Frequently used
config.getBoolean("autoCommit").foreach(hikariConfig.setAutoCommit)
Expand Down
8 changes: 8 additions & 0 deletions test/com/edulify/play/hikaricp/HikariCPConfigSpec.scala
Expand Up @@ -54,6 +54,14 @@ class HikariCPConfigSpec extends Specification {
HikariCPConfig.toHikariConfig("testDataSource", config).getJdbcUrl == "jdbc:postgresql://host/database"
}

"set url when present" in {
val properties = new Properties()
properties.setProperty("url", "jdbc:postgresql://host/database")
properties.setProperty("user", "user")
val config = new Configuration(ConfigFactory.parseProperties(properties))
HikariCPConfig.toHikariConfig("testDataSource", config).getJdbcUrl == "jdbc:postgresql://host/database"
}

"discard configuration not related to hikari config" in new Configs {
val props = valid
props.setProperty("just.some.garbage", "garbage")
Expand Down

0 comments on commit c33ebc3

Please sign in to comment.