startAsync

fun startAsync(config: Config, rawConfig: JsonObject): Pair<<Error class: unknown class>, Job>

Will create KoinApplication, init, load modules using StartLauncherPlugin and start plugins using the same base plugin. It is basic start method which accepts both config and rawConfig which suppose to be the same or at least rawConfig must contain serialized variant of config.

Koin part will be started in-place. This means, that after ending of this method call you will be able to take any declared dependency from koin

Return

KoinApplication of current start and Job which can be used to call CoroutineScope.join

Parameters

rawConfig

It is expected that this JsonObject will contain serialized Config (StartLauncherPlugin will deserialize it in its StartLauncherPlugin.setupDI


fun startAsync(rawConfig: JsonObject): Pair<<Error class: unknown class>, Job>

Call start with deserialized Config as config and rawConfig as is

Koin part will be started in-place. This means, that after ending of this method call you will be able to take any declared dependency from koin

Return

KoinApplication of current launch and Job of starting launch

Parameters

rawConfig

It is expected that this JsonObject will contain serialized Config


fun startAsync(config: Config): Pair<<Error class: unknown class>, Job>

Call start with deserialized Config as is and serialize it to JsonObject to pass as the first parameter to the basic start method

Koin part will be started in-place. This means, that after ending of this method call you will be able to take any declared dependency from koin

Return

KoinApplication of current launch and Job of starting launch

Parameters

config

Will be converted to JsonObject as raw config. That means that all plugins from config will receive serialized version of config in StartPlugin.setupDI method