izumi.distage.framework.services

Members list

Type members

Classlikes

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Impl

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Raw
class Default
trait ConfigLoader

Default config resources:

Default config resources:

  • ${roleName}.conf
  • ${roleName}-reference.conf
  • ${roleName}-reference-dev.conf
  • application.conf
  • application-reference.conf
  • application-reference-dev.conf
  • common.conf
  • common-reference.conf
  • common-reference-dev.conf

NOTE: You can change default config locations by overriding make[ConfigLocationProvider] binding in izumi.distage.roles.RoleAppMain#roleAppBootOverrides (defaults defined in izumi.distage.roles.RoleAppBootModule)

When explicit configs are passed to the role launcher on the command-line using the -c option, they have higher priority than all the reference configs. Role-specific configs on the command-line (-c option after :role argument) override global command-line configs (-c option given before the first :role argument).

Example:

 ./launcher -c global.conf :role1 -c role1.conf :role2 -c role2.conf

Here configs will be loaded in the following order, with higher priority earlier:

  • explicits: role1.conf, role2.conf, global.conf,
  • resources: role1[-reference,-dev].conf, role2[-reference,-dev].conf, application[-reference,-dev].conf, common[-reference,-dev].conf

Attributes

See also
Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object ConfigLoader

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
final case class ConfigLoaderArgs(global: Option[File], configs: List[RoleConfig])

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
object Default

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
object ConfigMerger

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type
trait ConfigMerger

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes

This component is responsible for passing-through selected components from the outer izumi.distage.roles.RoleAppBootModule context into DI scope of the started application.

This component is responsible for passing-through selected components from the outer izumi.distage.roles.RoleAppBootModule context into DI scope of the started application.

The application doesn't outright inherit the outer context because that would bring in way too many unrelated components into scope.

This will also add some other useful components:

  • GraphViz dump hook will be enabled if PlanningOptions#addGraphVizDump is enabled (via --debug-dump-graph commandline parameter)
  • IzLogger will be passed in from the outer context
  • LogIO[F] will be available with the application's effect type
  • LocatorRef @Id("roleapp") allows accessing components from outer context if needed

Attributes

See also
Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Impl[F]
Self type

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Supertypes
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
class ResourceRewriter(logger: IzLogger, rules: RewriteRules) extends PlanningHook

Rewrites bindings implemented with _ <: AutoCloseable into resource bindings that automatically close the implementation closeable.

Rewrites bindings implemented with _ <: AutoCloseable into resource bindings that automatically close the implementation closeable.

 class XImpl extends AutoCloseable
 make[X].from[XImpl]

becomes:

 make[X].fromResource {
  ClassConstructor[XImpl].map(distage.Lifecycle.fromAutoCloseable(_))
 }

Will produce warnings for all rewritten bindings, so better explicitly use .fromResource!

Attributes

Companion
object
Supertypes
trait PlanningHook
class Object
trait Matchable
class Any

Attributes

Companion
trait
Supertypes
class Object
trait Matchable
class Any
Self type

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Impl[F]