Retrieve your config from a given file in resource classpath, that is following HOCON format.
Retrieve your config from a given file in resource classpath, that is following HOCON format.
A simple key value file with the name sufficed by .properties
will work.
A complete example usage:
import zio.config.magnolia.DeriveConfigDescriptor.descriptor case class MyConfig(port: Int, url: String) val result: Layer[ReadError[String], Has[MyConfig]] = TypesafeConfig.fromDefaultLoader(descriptor[MyConfig])
Retrieve your config from a HOCON file
Retrieve your config from a HOCON file
A complete example usage:
import zio.config.magnolia.DeriveConfigDescriptor.descriptor case class MyConfig(port: Int, url: String) val result: Layer[ReadError[String], Has[MyConfig]] = TypesafeConfig.fromHoconFile(new File("/path/to/xyz.hocon"), descriptor[MyConfig])
Retrieve a config from a Hocon file calculated by an effect
Retrieve a config from a Hocon file calculated by an effect
A complete example usage:
import zio.config.magnolia.DeriveConfigDescriptor.descriptor case class MyConfig(port: Int, url: String) val result: Layer[ReadError[String], Has[MyConfig]] = TypesafeConfig.fromHoconFileM(ZIO.succeed(new File("/path/to/xyz.hocon")), descriptor[MyConfig])
Retrieve a config from a given Hocon string.
Retrieve a config from a given Hocon string.
A complete example usage:
import zio.config.magnolia.DeriveConfigDescriptor.descriptor case class MyConfig(port: Int, url: String) val configString = """port: 10, url: "http://x.y"""" val result: Layer[ReadError[String], Has[MyConfig]] = TypesafeConfig.fromHoconString(configString, descriptor[MyConfig])
Retrieve a config from a HOCON string value produced by an effect
Retrieve a config from a HOCON string value produced by an effect
A complete example usage:
import zio.config.magnolia.DeriveConfigDescriptor.descriptor case class MyConfig(port: Int, url: String) val configString = """port: 10, url: "http://x.y"""" val result: Layer[ReadError[String], Has[MyConfig]] = TypesafeConfig.fromHoconStringM(ZIO.succeed(configString), descriptor[MyConfig])
Retrieve a config from com.typesafe.config.Config
Retrieve a config from com.typesafe.config.Config
A complete example usage:
import zio.config.magnolia.DeriveConfigDescriptor.descriptor case class MyConfig(port: Int, url: String) val result: Layer[ReadError[String], Has[MyConfig]] = TypesafeConfig.fromTypesafeConfig(ConfigFactory.load.resolve, descriptor[MyConfig])
Retrieve a config from com.typesafe.config.Config
returned by an effect
Retrieve a config from com.typesafe.config.Config
returned by an effect
A complete example usage:
import zio.config.magnolia.DeriveConfigDescriptor.descriptor case class MyConfig(port: Int, url: String) val result: Layer[Throwable, Has[MyConfig]] = TypesafeConfig.fromTypesafeConfigM(ZIO.effect(ConfigFactory.load.resolve), descriptor[MyConfig])