ModuleProvider

izumi.distage.framework.services.ModuleProvider
See theModuleProvider companion object

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
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Impl[F]
Self type

Members list

Concise view

Value members

Abstract methods

def appModules(): Seq[Module]
def bootstrapModules(): Seq[BootstrapModule]

Concrete methods

final def mapApp(f: Seq[Module] => Seq[Module]): ModuleProvider
final def mapBootstrap(f: Seq[BootstrapModule] => Seq[BootstrapModule]): ModuleProvider