Skip to content

Instantly share code, notes, and snippets.

@geoHeil
Last active December 10, 2017 07:58
Show Gist options
  • Save geoHeil/a71c87bac767cba859faf817fca5315e to your computer and use it in GitHub Desktop.
Save geoHeil/a71c87bac767cba859faf817fca5315e to your computer and use it in GitHub Desktop.
configuration ficus
import com.typesafe.config.{ Config, ConfigFactory }
import net.ceedubs.ficus.Ficus._
import net.ceedubs.ficus.readers.ValueReader
import net.ceedubs.ficus.readers.namemappers.implicits.hyphenCase
object ConfigurationUtils {
def loadConfiguration[T: ValueReader](): T = {
val config: Config = ConfigFactory.load()
config.as[T]
}
}
// .......................................................
case class EasyToDecode(a: String, b: String, c: String)
// .........................................................
import net.ceedubs.ficus.readers.ArbitraryTypeReader._
object Foo extends App{
val c = ConfigurationUtils.loadConfiguration[EasyToDecode]
}
@travisbrown
Copy link

This compiles just fine for me with Ficus 1.4.3 on 2.12.2.

@geoHeil
Copy link
Author

geoHeil commented Dec 10, 2017

I use `scalaVersion := "2.11.12"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment