abstract class RoleAppLauncherImpl[F[_]] extends RoleAppLauncher
Application flow: 1. Parse commandline parameters 2. Create "early logger" (console sink & configurable log level) 3. Show startup banner 4. Load raw config 5. Create "late logger" using config 6. Enumerate app plugins and bootstrap plugins 7. Enumerate available roles, show role info and and apply merge strategy/conflict resolution 8. Validate loaded roles (for non-emptyness and conflicts between bootstrap and app plugins) 9. Build plan for DIEffect runner 10. Build plan for integration checks 11. Build plan for application 12. Run role tasks 13. Run role services 14. Await application termination 15. Run finalizers 16. Shutdown executors
- Alphabetic
- By Inheritance
- RoleAppLauncherImpl
- RoleAppLauncher
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new RoleAppLauncherImpl()(implicit arg0: distage.TagK[F])
Abstract Value Members
- abstract def pluginConfig: PluginConfig
- Attributes
- protected
- abstract def shutdownStrategy: AppShutdownStrategy[F]
- Attributes
- protected
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def additionalLibraryReferences: Seq[LibraryReference]
- Attributes
- protected
- def appOverride: distage.ModuleBase
- Attributes
- protected
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def bootstrapPluginConfig: PluginConfig
- Attributes
- protected
- def bsOverride: distage.BootstrapModule
- Attributes
- protected
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def configActivationSection: String
- Attributes
- protected
- def createAppPlan(parameters: RawAppArgs, roles: RolesInfo, appPlugins: Seq[PluginBase], bsPlugins: Seq[PluginBase], config: AppConfig, lateLogger: IzLogger): AppStartupPlans
- def defaultActivations: Activation
- Attributes
- protected
- def defaultBaseConfigs: Seq[String]
- Attributes
- protected
- def defaultLogFormatJson: Boolean
- Attributes
- protected
- def defaultLogLevel: Level
- Attributes
- protected
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def gcRoots(rolesInfo: RolesInfo): Set[distage.DIKey]
- Attributes
- protected
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def launch(parameters: RawAppArgs): Unit
- Definition Classes
- RoleAppLauncherImpl → RoleAppLauncher
- def loadRoles(parameters: RawAppArgs, logger: IzLogger, appPlugins: Seq[PluginBase], bsPlugins: Seq[PluginBase]): RolesInfo
- Attributes
- protected
- def makeAppMergeStrategy(lateLogger: IzLogger, parameters: RawAppArgs, roles: RolesInfo): PluginMergeStrategy
- Attributes
- protected
- def makeBootstrapMergeStrategy(lateLogger: IzLogger, parameters: RawAppArgs, roles: RolesInfo): PluginMergeStrategy
- Attributes
- protected
- def makeBootstrapPluginLoader(earlyLogger: IzLogger): PluginLoader
- Attributes
- protected
- def makeConfigLoader(earlyLogger: IzLogger, parameters: RawAppArgs): ConfigLoader
- Attributes
- protected
- def makeConfigLoaderParameters(parameters: RawAppArgs): (Option[File], Map[String, Option[File]])
- Attributes
- protected
- def makeExecutor(parameters: RawAppArgs, roles: RolesInfo, lateLogger: IzLogger, startupPlanExecutor: StartupPlanExecutor[F], filters: Filters[F] = Filters.all): RoleAppExecutor[F]
- Attributes
- protected
- def makeModuleProvider(options: PlanningOptions, parameters: RawAppArgs, activationInfo: ActivationInfo, activation: Activation, roles: RolesInfo, config: AppConfig, logRouter: LogRouter): ModuleProvider
- Attributes
- protected
- def makePlanner(options: PlanningOptions, bsModule: distage.BootstrapModule, lateLogger: IzLogger, reboot: Bootloader): RoleAppPlanner[F]
- Attributes
- protected
- def makePluginLoader(earlyLogger: IzLogger): PluginLoader
- Attributes
- protected
- def makeStartupExecutor(lateLogger: IzLogger, injector: distage.Injector): StartupPlanExecutor[F]
- Attributes
- protected
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def parseActivation(lateLogger: IzLogger, parameters: RawAppArgs, rolesInfo: RolesInfo, config: AppConfig, activationInfo: ActivationInfo): Activation
Note, besides overriding this method, activation parsing strategy can also be changed by using bootstrap modules or plugins and adding a binding for
make[Activation]
Note, besides overriding this method, activation parsing strategy can also be changed by using bootstrap modules or plugins and adding a binding for
make[Activation]
- Attributes
- protected
- def parseActivationInfo(lateLogger: IzLogger, appModule: distage.ModuleBase): ActivationInfo
- Attributes
- protected
- def planningOptions(parameters: RawAppArgs): PlanningOptions
- Attributes
- protected
- def requiredActivations: Activation
- Attributes
- protected
- def showBanner(logger: IzLogger, referenceLibraries: Seq[LibraryReference]): Unit
- Attributes
- protected
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def validate(bootstrapAutoModule: distage.ModuleBase, appModule: distage.ModuleBase): Unit
- Attributes
- protected
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()