diff --git a/docs/boots/alltypes/index.md b/docs/boots/alltypes/index.md
index bd62819..d3b6980 100644
--- a/docs/boots/alltypes/index.md
+++ b/docs/boots/alltypes/index.md
@@ -4,8 +4,8 @@
| Name | Summary |
|---|---|
-| [com.agoda.boots.BootException](../com.agoda.boots/-boot-exception/index.md) | Exception that aggregates the reasons of failure in case a [report](../com.agoda.boots/-report/index.md) has a [failed](../com.agoda.boots/-status/-failed/index.md) state and is not with [single](../com.agoda.boots/-key/-single/index.md) key. |
| [com.agoda.boots.Bootable](../com.agoda.boots/-bootable/index.md) | Main boot component. It is a piece of code that executes any logic required to boot the system properly. |
+| [com.agoda.boots.BootException](../com.agoda.boots/-boot-exception/index.md) | Exception that aggregates the reasons of failure in case a [report](../com.agoda.boots/-report/index.md) has a [failed](../com.agoda.boots/-status/-failed/index.md) state and is not with [single](../com.agoda.boots/-key/-single/index.md) key. |
| [com.agoda.boots.Boots](../com.agoda.boots/-boots/index.md) | Main controller object. Used to interact with the library. |
| [com.agoda.boots.Configuration](../com.agoda.boots/-configuration/index.md) | Configuration is used to provide a custom component to the [Boots](../com.agoda.boots/-boots/index.md). By default, all fields are null. When you provide a configuration with some actual values to [configure()](../com.agoda.boots/-boots/configure.md), only non-null will be used to replace current ones. |
| [com.agoda.boots.impl.DefaultExecutor](../com.agoda.boots.impl/-default-executor/index.md) | Default implementation of [Executor](../com.agoda.boots/-executor/index.md) for JVM. |
diff --git a/docs/boots/com.agoda.boots.impl/-default-executor/-init-.md b/docs/boots/com.agoda.boots.impl/-default-executor/-init-.md
index 8e68407..2ae1572 100644
--- a/docs/boots/com.agoda.boots.impl/-default-executor/-init-.md
+++ b/docs/boots/com.agoda.boots.impl/-default-executor/-init-.md
@@ -6,7 +6,7 @@
Default implementation of [Executor](../../com.agoda.boots/-executor/index.md) for JVM.
-Implementation uses cached [ThreadPoolExecutor](http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ThreadPoolExecutor.html) under the hood and is not able
+Implementation uses cached [ThreadPoolExecutor](https://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ThreadPoolExecutor.html) under the hood and is not able
to forward non-concurrent bootables to the main thread, executing them on the thread
that has invoked it.
diff --git a/docs/boots/com.agoda.boots.impl/-default-executor/index.md b/docs/boots/com.agoda.boots.impl/-default-executor/index.md
index a72443f..2d6f424 100644
--- a/docs/boots/com.agoda.boots.impl/-default-executor/index.md
+++ b/docs/boots/com.agoda.boots.impl/-default-executor/index.md
@@ -6,7 +6,7 @@
Default implementation of [Executor](../../com.agoda.boots/-executor/index.md) for JVM.
-Implementation uses cached [ThreadPoolExecutor](http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ThreadPoolExecutor.html) under the hood and is not able
+Implementation uses cached [ThreadPoolExecutor](https://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ThreadPoolExecutor.html) under the hood and is not able
to forward non-concurrent bootables to the main thread, executing them on the thread
that has invoked it.
@@ -29,7 +29,7 @@ execution of concurrent ones.
|---|---|
| [capacity](capacity.md) | `open val capacity: `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html)
maximum concurrent threads capacity |
| [isMainThreadSupported](is-main-thread-supported.md) | `open val isMainThreadSupported: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
true if executor can execute given function on main thread (switch context) |
-| [pool](pool.md) | `val pool: `[`ExecutorService`](http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ExecutorService.html) |
+| [pool](pool.md) | `val pool: `[`ExecutorService`](https://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ExecutorService.html) |
### Functions
diff --git a/docs/boots/com.agoda.boots.impl/-default-executor/pool.md b/docs/boots/com.agoda.boots.impl/-default-executor/pool.md
index 76bebfc..3ab4e79 100644
--- a/docs/boots/com.agoda.boots.impl/-default-executor/pool.md
+++ b/docs/boots/com.agoda.boots.impl/-default-executor/pool.md
@@ -2,4 +2,4 @@
# pool
-`protected val pool: `[`ExecutorService`](http://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ExecutorService.html)
\ No newline at end of file
+`protected val pool: `[`ExecutorService`](https://docs.oracle.com/javase/6/docs/api/java/util/concurrent/ExecutorService.html)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots.impl/-default-notifier/index.md b/docs/boots/com.agoda.boots.impl/-default-notifier/index.md
index b01a2cd..87c7a6c 100644
--- a/docs/boots/com.agoda.boots.impl/-default-notifier/index.md
+++ b/docs/boots/com.agoda.boots.impl/-default-notifier/index.md
@@ -31,5 +31,5 @@ All calls are synchronous.
| Name | Summary |
|---|---|
| [add](add.md) | `open fun add(key: `[`Key`](../../com.agoda.boots/-key/index.md)`, listener: `[`Listener`](../../com.agoda.boots/-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Enables given listener to receive event callbacks for given key. |
-| [notify](notify.md) | `open fun notify(key: `[`Single`](../../com.agoda.boots/-key/-single/index.md)`, report: `[`Report`](../../com.agoda.boots/-report/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Informs the notifier about bootable state change in the boot system so that it can check if there is any listener that it need to call back and invoke any found ones. |
+| [notify](notify.md) | `open fun notify(key: `[`Key.Single`](../../com.agoda.boots/-key/-single/index.md)`, report: `[`Report`](../../com.agoda.boots/-report/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Informs the notifier about bootable state change in the boot system so that it can check if there is any listener that it need to call back and invoke any found ones. |
| [remove](remove.md) | `open fun remove(key: `[`Key`](../../com.agoda.boots/-key/index.md)`, listener: `[`Listener`](../../com.agoda.boots/-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Disables given listener to receive event callbacks for given key.`open fun remove(listener: `[`Listener`](../../com.agoda.boots/-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Disables given listener to receive event callbacks for all events. |
diff --git a/docs/boots/com.agoda.boots.impl/-default-notifier/notify.md b/docs/boots/com.agoda.boots.impl/-default-notifier/notify.md
index 585a827..e02f76b 100644
--- a/docs/boots/com.agoda.boots.impl/-default-notifier/notify.md
+++ b/docs/boots/com.agoda.boots.impl/-default-notifier/notify.md
@@ -2,7 +2,7 @@
# notify
-`open fun notify(key: `[`Single`](../../com.agoda.boots/-key/-single/index.md)`, report: `[`Report`](../../com.agoda.boots/-report/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
+`open fun notify(key: `[`Key.Single`](../../com.agoda.boots/-key/-single/index.md)`, report: `[`Report`](../../com.agoda.boots/-report/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Overrides [Notifier.notify](../../com.agoda.boots/-notifier/notify.md)
diff --git a/docs/boots/com.agoda.boots.impl/-default-reporter/index.md b/docs/boots/com.agoda.boots.impl/-default-reporter/index.md
index 219b48c..f9491b0 100644
--- a/docs/boots/com.agoda.boots.impl/-default-reporter/index.md
+++ b/docs/boots/com.agoda.boots.impl/-default-reporter/index.md
@@ -26,11 +26,11 @@ otherwise it generates new combined report on every request.
| [boots](boots.md) | `open val boots: `[`MutableMap`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html)`<`[`Key`](../../com.agoda.boots/-key/index.md)`, `[`Bootable`](../../com.agoda.boots/-bootable/index.md)`>`
map of bootables added to the system |
| [executor](executor.md) | `open lateinit var executor: `[`Executor`](../../com.agoda.boots/-executor/index.md)
instance of [Executor](../../com.agoda.boots/-executor/index.md) used by the system |
| [logger](logger.md) | `open var logger: `[`Logger`](../../com.agoda.boots/-logger/index.md)`?`
instance of [Logger](../../com.agoda.boots/-logger/index.md) used by the system |
-| [reports](reports.md) | `val reports: `[`MutableMap`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html)`<`[`Single`](../../com.agoda.boots/-key/-single/index.md)`, `[`Report`](../../com.agoda.boots/-report/index.md)`>`
container of [single](../../com.agoda.boots/-key/-single/index.md) reports. |
+| [reports](reports.md) | `val reports: `[`MutableMap`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html)`<`[`Key.Single`](../../com.agoda.boots/-key/-single/index.md)`, `[`Report`](../../com.agoda.boots/-report/index.md)`>`
container of [single](../../com.agoda.boots/-key/-single/index.md) reports. |
### Functions
| Name | Summary |
|---|---|
| [get](get.md) | `open fun get(key: `[`Key`](../../com.agoda.boots/-key/index.md)`): `[`Report`](../../com.agoda.boots/-report/index.md)
Retrieves the [report](../../com.agoda.boots/-report/index.md) for a given key. In case where [key](../../com.agoda.boots/-reporter/get.md#com.agoda.boots.Reporter$get(com.agoda.boots.Key)/key) is not [single](../../com.agoda.boots/-key/-single/index.md), reporter generates combined report based on the type of the [key](../../com.agoda.boots/-reporter/get.md#com.agoda.boots.Reporter$get(com.agoda.boots.Key)/key). |
-| [set](set.md) | `open fun set(key: `[`Single`](../../com.agoda.boots/-key/-single/index.md)`, status: `[`Status`](../../com.agoda.boots/-status/index.md)`, start: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, time: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`): `[`Report`](../../com.agoda.boots/-report/index.md)
Saves the report data from a controller [object](../../com.agoda.boots/-boots/index.md). |
+| [set](set.md) | `open fun set(key: `[`Key.Single`](../../com.agoda.boots/-key/-single/index.md)`, status: `[`Status`](../../com.agoda.boots/-status/index.md)`, start: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, time: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`): `[`Report`](../../com.agoda.boots/-report/index.md)
Saves the report data from a controller [object](../../com.agoda.boots/-boots/index.md). |
diff --git a/docs/boots/com.agoda.boots.impl/-default-reporter/reports.md b/docs/boots/com.agoda.boots.impl/-default-reporter/reports.md
index feeb0a9..97e0315 100644
--- a/docs/boots/com.agoda.boots.impl/-default-reporter/reports.md
+++ b/docs/boots/com.agoda.boots.impl/-default-reporter/reports.md
@@ -2,7 +2,7 @@
# reports
-`protected val reports: `[`MutableMap`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html)`<`[`Single`](../../com.agoda.boots/-key/-single/index.md)`, `[`Report`](../../com.agoda.boots/-report/index.md)`>`
+`protected val reports: `[`MutableMap`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html)`<`[`Key.Single`](../../com.agoda.boots/-key/-single/index.md)`, `[`Report`](../../com.agoda.boots/-report/index.md)`>`
container of [single](../../com.agoda.boots/-key/-single/index.md) reports.
diff --git a/docs/boots/com.agoda.boots.impl/-default-reporter/set.md b/docs/boots/com.agoda.boots.impl/-default-reporter/set.md
index 82fdc59..1ef5169 100644
--- a/docs/boots/com.agoda.boots.impl/-default-reporter/set.md
+++ b/docs/boots/com.agoda.boots.impl/-default-reporter/set.md
@@ -2,7 +2,7 @@
# set
-`open fun set(key: `[`Single`](../../com.agoda.boots/-key/-single/index.md)`, status: `[`Status`](../../com.agoda.boots/-status/index.md)`, start: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, time: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`): `[`Report`](../../com.agoda.boots/-report/index.md)
+`open fun set(key: `[`Key.Single`](../../com.agoda.boots/-key/-single/index.md)`, status: `[`Status`](../../com.agoda.boots/-status/index.md)`, start: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`, time: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)`): `[`Report`](../../com.agoda.boots/-report/index.md)
Overrides [Reporter.set](../../com.agoda.boots/-reporter/set.md)
diff --git a/docs/boots/com.agoda.boots/-bootable/dependencies.md b/docs/boots/com.agoda.boots/-bootable/dependencies.md
index 5e93815..2b0ceee 100644
--- a/docs/boots/com.agoda.boots/-bootable/dependencies.md
+++ b/docs/boots/com.agoda.boots/-bootable/dependencies.md
@@ -2,7 +2,7 @@
# dependencies
-`open val dependencies: `[`Multiple`](../-key/-multiple/index.md)
+`open val dependencies: `[`Key.Multiple`](../-key/-multiple/index.md)
dependencies of the bootable. System will not proceed with
invoking the bootable until all bootables with given keys
diff --git a/docs/boots/com.agoda.boots/-bootable/index.md b/docs/boots/com.agoda.boots/-bootable/index.md
index 44b9914..1799f3c 100644
--- a/docs/boots/com.agoda.boots/-bootable/index.md
+++ b/docs/boots/com.agoda.boots/-bootable/index.md
@@ -17,10 +17,10 @@ any logic required to boot the system properly.
| Name | Summary |
|---|---|
-| [dependencies](dependencies.md) | `open val dependencies: `[`Multiple`](../-key/-multiple/index.md)
dependencies of the bootable. System will not proceed with invoking the bootable until all bootables with given keys have successfully executed. |
+| [dependencies](dependencies.md) | `open val dependencies: `[`Key.Multiple`](../-key/-multiple/index.md)
dependencies of the bootable. System will not proceed with invoking the bootable until all bootables with given keys have successfully executed. |
| [isConcurrent](is-concurrent.md) | `open val isConcurrent: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
flag that indicates that this bootable can be executed on a separate thread. |
| [isCritical](is-critical.md) | `open val isCritical: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Flag that indicated that this bootable is critical to the boot process and should be started ASAP at all times. That means that even if you request some other bootable to be executed, the system will boot all critical bootables before actually start any non-critical bootable. Also, if critical bootable fails to boot, all boot tasks will stop immediately and all listeners will be called back with failure. |
-| [key](key.md) | `abstract val key: `[`Single`](../-key/-single/index.md)
unique identifier of the bootable |
+| [key](key.md) | `abstract val key: `[`Key.Single`](../-key/-single/index.md)
unique identifier of the bootable |
### Functions
diff --git a/docs/boots/com.agoda.boots/-bootable/key.md b/docs/boots/com.agoda.boots/-bootable/key.md
index c8c6fc8..8984378 100644
--- a/docs/boots/com.agoda.boots/-bootable/key.md
+++ b/docs/boots/com.agoda.boots/-bootable/key.md
@@ -2,7 +2,7 @@
# key
-`abstract val key: `[`Single`](../-key/-single/index.md)
+`abstract val key: `[`Key.Single`](../-key/-single/index.md)
unique identifier of the bootable
diff --git a/docs/boots/com.agoda.boots/-boots/add.md b/docs/boots/com.agoda.boots/-boots/add.md
index efcb1a5..c7a8191 100644
--- a/docs/boots/com.agoda.boots/-boots/add.md
+++ b/docs/boots/com.agoda.boots/-boots/add.md
@@ -2,7 +2,7 @@
# add
-`fun add(key: `[`Single`](../-key/-single/index.md)`, dependencies: `[`Multiple`](../-key/-multiple/index.md)` = multiple(), isConcurrent: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = true, isCritical: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = false, boot: () -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
+`fun add(key: `[`Key.Single`](../-key/-single/index.md)`, dependencies: `[`Key.Multiple`](../-key/-multiple/index.md)` = multiple(), isConcurrent: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = true, isCritical: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = false, boot: () -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Creates instance of bootable and adds it to the system's pool as well
as to components ([Reporter](../-reporter/index.md), [Notifier](../-notifier/index.md), [Sequencer](../-sequencer/index.md)).
diff --git a/docs/boots/com.agoda.boots/-boots/boot.md b/docs/boots/com.agoda.boots/-boots/boot.md
index 93b8f59..d74c18c 100644
--- a/docs/boots/com.agoda.boots/-boots/boot.md
+++ b/docs/boots/com.agoda.boots/-boots/boot.md
@@ -31,7 +31,7 @@ handling threading, measuring the performance.
**Return**
created listener instance
-`@JvmStatic fun boot(key: `[`Key`](../-key/index.md)`, listener: `[`Builder`](../-listener/-builder/index.md)`): `[`Listener`](../-listener/index.md)
+`@JvmStatic fun boot(key: `[`Key`](../-key/index.md)`, listener: `[`Listener.Builder`](../-listener/-builder/index.md)`): `[`Listener`](../-listener/index.md)
Requests library to boot given bootable/bootables satisfying
it's dependencies and critical bootables before.
diff --git a/docs/boots/com.agoda.boots/-boots/index.md b/docs/boots/com.agoda.boots/-boots/index.md
index bf6f51e..35637a2 100644
--- a/docs/boots/com.agoda.boots/-boots/index.md
+++ b/docs/boots/com.agoda.boots/-boots/index.md
@@ -20,11 +20,11 @@ Supports both Kotlin DSL and Java style.
| Name | Summary |
|---|---|
-| [add](add.md) | `fun add(key: `[`Single`](../-key/-single/index.md)`, dependencies: `[`Multiple`](../-key/-multiple/index.md)` = multiple(), isConcurrent: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = true, isCritical: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = false, boot: () -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Creates instance of bootable and adds it to the system's pool as well as to components ([Reporter](../-reporter/index.md), [Notifier](../-notifier/index.md), [Sequencer](../-sequencer/index.md)).`fun add(vararg bootables: `[`Bootable`](../-bootable/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`fun add(bootables: `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Adds given bootable to the system's pool and adds them to components ([Reporter](../-reporter/index.md), [Notifier](../-notifier/index.md), [Sequencer](../-sequencer/index.md)). |
-| [boot](boot.md) | `fun boot(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`? = null): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`fun boot(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`.() -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Listener`](../-listener/index.md)
`fun boot(key: `[`Key`](../-key/index.md)`, listener: `[`Builder`](../-listener/-builder/index.md)`): `[`Listener`](../-listener/index.md)
Requests library to boot given bootable/bootables satisfying it's dependencies and critical bootables before. |
+| [add](add.md) | `fun add(key: `[`Key.Single`](../-key/-single/index.md)`, dependencies: `[`Key.Multiple`](../-key/-multiple/index.md)` = multiple(), isConcurrent: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = true, isCritical: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)` = false, boot: () -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Creates instance of bootable and adds it to the system's pool as well as to components ([Reporter](../-reporter/index.md), [Notifier](../-notifier/index.md), [Sequencer](../-sequencer/index.md)).`fun add(vararg bootables: `[`Bootable`](../-bootable/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`fun add(bootables: `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Adds given bootable to the system's pool and adds them to components ([Reporter](../-reporter/index.md), [Notifier](../-notifier/index.md), [Sequencer](../-sequencer/index.md)). |
+| [boot](boot.md) | `fun boot(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`? = null): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`fun boot(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`.() -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Listener`](../-listener/index.md)
`fun boot(key: `[`Key`](../-key/index.md)`, listener: `[`Listener.Builder`](../-listener/-builder/index.md)`): `[`Listener`](../-listener/index.md)
Requests library to boot given bootable/bootables satisfying it's dependencies and critical bootables before. |
| [configure](configure.md) | `fun configure(configuration: `[`Configuration`](../-configuration/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`fun configure(configuration: `[`Configuration`](../-configuration/index.md)`.() -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Sets provided configuration and overrides current component implementations with defined in the given configuration object. |
| [invoke](invoke.md) | `operator fun invoke(tail: `[`Boots`](./index.md)`.() -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Dsl support operator function. |
| [report](report.md) | `fun report(key: `[`Key`](../-key/index.md)`): `[`Report`](../-report/index.md)
Retrieves the [report](../-report/index.md) for a given key. |
| [reset](reset.md) | `fun reset(): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Clears bootable list and sets all components to default instances. Also sets [isStrictMode](../-configuration/is-strict-mode.md) to `true` and sets [logger](../-configuration/logger.md) to `null`. |
-| [subscribe](subscribe.md) | `fun subscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`fun subscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`.() -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Listener`](../-listener/index.md)
`fun subscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Builder`](../-listener/-builder/index.md)`): `[`Listener`](../-listener/index.md)
Adds given listener to event callbacks of a given key. |
+| [subscribe](subscribe.md) | `fun subscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`fun subscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`.() -> `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)`): `[`Listener`](../-listener/index.md)
`fun subscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Listener.Builder`](../-listener/-builder/index.md)`): `[`Listener`](../-listener/index.md)
Adds given listener to event callbacks of a given key. |
| [unsubscribe](unsubscribe.md) | `fun unsubscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Removes given listener from event callbacks of a given key.`fun unsubscribe(listener: `[`Listener`](../-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Removes given listener from all event callbacks completely. |
diff --git a/docs/boots/com.agoda.boots/-boots/subscribe.md b/docs/boots/com.agoda.boots/-boots/subscribe.md
index d9d7fbf..d1732b2 100644
--- a/docs/boots/com.agoda.boots/-boots/subscribe.md
+++ b/docs/boots/com.agoda.boots/-boots/subscribe.md
@@ -23,7 +23,7 @@ Adds given listener to event callbacks of a given key.
**Return**
created listener instance
-`@JvmStatic fun subscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Builder`](../-listener/-builder/index.md)`): `[`Listener`](../-listener/index.md)
+`@JvmStatic fun subscribe(key: `[`Key`](../-key/index.md)`, listener: `[`Listener.Builder`](../-listener/-builder/index.md)`): `[`Listener`](../-listener/index.md)
Adds given listener to event callbacks of a given key.
diff --git a/docs/boots/com.agoda.boots/-configuration/-builder/index.md b/docs/boots/com.agoda.boots/-configuration/-builder/index.md
index c816489..88397b6 100644
--- a/docs/boots/com.agoda.boots/-configuration/-builder/index.md
+++ b/docs/boots/com.agoda.boots/-configuration/-builder/index.md
@@ -17,9 +17,9 @@ Builder is presented to support Java style configuration.
| Name | Summary |
|---|---|
| [build](build.md) | `fun build(): `[`Configuration`](../index.md) |
-| [setExecutor](set-executor.md) | `fun setExecutor(executor: `[`Executor`](../../-executor/index.md)`): `[`Builder`](./index.md) |
-| [setLogger](set-logger.md) | `fun setLogger(logger: `[`Logger`](../../-logger/index.md)`): `[`Builder`](./index.md) |
-| [setNotifier](set-notifier.md) | `fun setNotifier(notifier: `[`Notifier`](../../-notifier/index.md)`): `[`Builder`](./index.md) |
-| [setReporter](set-reporter.md) | `fun setReporter(reporter: `[`Reporter`](../../-reporter/index.md)`): `[`Builder`](./index.md) |
-| [setSequencer](set-sequencer.md) | `fun setSequencer(sequencer: `[`Sequencer`](../../-sequencer/index.md)`): `[`Builder`](./index.md) |
-| [setStrictMode](set-strict-mode.md) | `fun setStrictMode(isStrictMode: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`): `[`Builder`](./index.md) |
+| [setExecutor](set-executor.md) | `fun setExecutor(executor: `[`Executor`](../../-executor/index.md)`): `[`Configuration.Builder`](./index.md) |
+| [setLogger](set-logger.md) | `fun setLogger(logger: `[`Logger`](../../-logger/index.md)`): `[`Configuration.Builder`](./index.md) |
+| [setNotifier](set-notifier.md) | `fun setNotifier(notifier: `[`Notifier`](../../-notifier/index.md)`): `[`Configuration.Builder`](./index.md) |
+| [setReporter](set-reporter.md) | `fun setReporter(reporter: `[`Reporter`](../../-reporter/index.md)`): `[`Configuration.Builder`](./index.md) |
+| [setSequencer](set-sequencer.md) | `fun setSequencer(sequencer: `[`Sequencer`](../../-sequencer/index.md)`): `[`Configuration.Builder`](./index.md) |
+| [setStrictMode](set-strict-mode.md) | `fun setStrictMode(isStrictMode: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`): `[`Configuration.Builder`](./index.md) |
diff --git a/docs/boots/com.agoda.boots/-configuration/-builder/set-executor.md b/docs/boots/com.agoda.boots/-configuration/-builder/set-executor.md
index 00ae424..a682279 100644
--- a/docs/boots/com.agoda.boots/-configuration/-builder/set-executor.md
+++ b/docs/boots/com.agoda.boots/-configuration/-builder/set-executor.md
@@ -2,4 +2,4 @@
# setExecutor
-`fun setExecutor(executor: `[`Executor`](../../-executor/index.md)`): `[`Builder`](index.md)
\ No newline at end of file
+`fun setExecutor(executor: `[`Executor`](../../-executor/index.md)`): `[`Configuration.Builder`](index.md)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-configuration/-builder/set-logger.md b/docs/boots/com.agoda.boots/-configuration/-builder/set-logger.md
index 6697a4f..db15d14 100644
--- a/docs/boots/com.agoda.boots/-configuration/-builder/set-logger.md
+++ b/docs/boots/com.agoda.boots/-configuration/-builder/set-logger.md
@@ -2,4 +2,4 @@
# setLogger
-`fun setLogger(logger: `[`Logger`](../../-logger/index.md)`): `[`Builder`](index.md)
\ No newline at end of file
+`fun setLogger(logger: `[`Logger`](../../-logger/index.md)`): `[`Configuration.Builder`](index.md)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-configuration/-builder/set-notifier.md b/docs/boots/com.agoda.boots/-configuration/-builder/set-notifier.md
index b33fc73..7d2409e 100644
--- a/docs/boots/com.agoda.boots/-configuration/-builder/set-notifier.md
+++ b/docs/boots/com.agoda.boots/-configuration/-builder/set-notifier.md
@@ -2,4 +2,4 @@
# setNotifier
-`fun setNotifier(notifier: `[`Notifier`](../../-notifier/index.md)`): `[`Builder`](index.md)
\ No newline at end of file
+`fun setNotifier(notifier: `[`Notifier`](../../-notifier/index.md)`): `[`Configuration.Builder`](index.md)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-configuration/-builder/set-reporter.md b/docs/boots/com.agoda.boots/-configuration/-builder/set-reporter.md
index 633464e..f68547c 100644
--- a/docs/boots/com.agoda.boots/-configuration/-builder/set-reporter.md
+++ b/docs/boots/com.agoda.boots/-configuration/-builder/set-reporter.md
@@ -2,4 +2,4 @@
# setReporter
-`fun setReporter(reporter: `[`Reporter`](../../-reporter/index.md)`): `[`Builder`](index.md)
\ No newline at end of file
+`fun setReporter(reporter: `[`Reporter`](../../-reporter/index.md)`): `[`Configuration.Builder`](index.md)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-configuration/-builder/set-sequencer.md b/docs/boots/com.agoda.boots/-configuration/-builder/set-sequencer.md
index 7284e02..23ce81e 100644
--- a/docs/boots/com.agoda.boots/-configuration/-builder/set-sequencer.md
+++ b/docs/boots/com.agoda.boots/-configuration/-builder/set-sequencer.md
@@ -2,4 +2,4 @@
# setSequencer
-`fun setSequencer(sequencer: `[`Sequencer`](../../-sequencer/index.md)`): `[`Builder`](index.md)
\ No newline at end of file
+`fun setSequencer(sequencer: `[`Sequencer`](../../-sequencer/index.md)`): `[`Configuration.Builder`](index.md)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-configuration/-builder/set-strict-mode.md b/docs/boots/com.agoda.boots/-configuration/-builder/set-strict-mode.md
index 662ef4a..1be1eb9 100644
--- a/docs/boots/com.agoda.boots/-configuration/-builder/set-strict-mode.md
+++ b/docs/boots/com.agoda.boots/-configuration/-builder/set-strict-mode.md
@@ -2,4 +2,4 @@
# setStrictMode
-`fun setStrictMode(isStrictMode: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`): `[`Builder`](index.md)
\ No newline at end of file
+`fun setStrictMode(isStrictMode: `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)`): `[`Configuration.Builder`](index.md)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-holder/excluding.md b/docs/boots/com.agoda.boots/-holder/excluding.md
index 1c5c7d6..8534e05 100644
--- a/docs/boots/com.agoda.boots/-holder/excluding.md
+++ b/docs/boots/com.agoda.boots/-holder/excluding.md
@@ -2,7 +2,7 @@
# excluding
-`open fun excluding(key: `[`Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
+`open fun excluding(key: `[`Key.Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key.
diff --git a/docs/boots/com.agoda.boots/-holder/index.md b/docs/boots/com.agoda.boots/-holder/index.md
index cf8069e..7bdfc8b 100644
--- a/docs/boots/com.agoda.boots/-holder/index.md
+++ b/docs/boots/com.agoda.boots/-holder/index.md
@@ -27,8 +27,8 @@ the holders.
| [add](add.md) | `open fun add(bootables: `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Adds bootables to the storage and maps it with corresponding keys for easier access. |
| [all](all.md) | `open fun all(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves all available bootables to the system. |
| [critical](critical.md) | `open fun critical(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that have thier [isCritical](../-bootable/is-critical.md) flag set to `true`. |
-| [excluding](excluding.md) | `open fun excluding(key: `[`Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key. |
-| [multiple](multiple.md) | `open fun multiple(key: `[`Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key. |
+| [excluding](excluding.md) | `open fun excluding(key: `[`Key.Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key. |
+| [multiple](multiple.md) | `open fun multiple(key: `[`Key.Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key. |
### Inheritors
diff --git a/docs/boots/com.agoda.boots/-holder/multiple.md b/docs/boots/com.agoda.boots/-holder/multiple.md
index 42a4204..dc57df5 100644
--- a/docs/boots/com.agoda.boots/-holder/multiple.md
+++ b/docs/boots/com.agoda.boots/-holder/multiple.md
@@ -2,7 +2,7 @@
# multiple
-`open fun multiple(key: `[`Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
+`open fun multiple(key: `[`Key.Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key.
diff --git a/docs/boots/com.agoda.boots/-key/-excluding/-init-.md b/docs/boots/com.agoda.boots/-key/-excluding/-init-.md
index 3dbcb1c..9affd39 100644
--- a/docs/boots/com.agoda.boots/-key/-excluding/-init-.md
+++ b/docs/boots/com.agoda.boots/-key/-excluding/-init-.md
@@ -2,7 +2,7 @@
# <init>
-`Excluding(keys: `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](../-single/index.md)`>)`
+`Excluding(keys: `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](../-single/index.md)`>)`
Excluding key. Marks all available keys except given set of [single](../-single/index.md) keys.
diff --git a/docs/boots/com.agoda.boots/-key/-excluding/contains-all.md b/docs/boots/com.agoda.boots/-key/-excluding/contains-all.md
index b112250..910abc6 100644
--- a/docs/boots/com.agoda.boots/-key/-excluding/contains-all.md
+++ b/docs/boots/com.agoda.boots/-key/-excluding/contains-all.md
@@ -2,4 +2,4 @@
# containsAll
-`fun containsAll(elements: `[`Collection`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html)`<`[`Single`](../-single/index.md)`>): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
\ No newline at end of file
+`fun containsAll(elements: `[`Collection`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html)`<`[`Key.Single`](../-single/index.md)`>): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-key/-excluding/contains.md b/docs/boots/com.agoda.boots/-key/-excluding/contains.md
index d2192f5..c8997d7 100644
--- a/docs/boots/com.agoda.boots/-key/-excluding/contains.md
+++ b/docs/boots/com.agoda.boots/-key/-excluding/contains.md
@@ -2,4 +2,4 @@
# contains
-`fun contains(element: `[`Single`](../-single/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
\ No newline at end of file
+`fun contains(element: `[`Key.Single`](../-single/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-key/-excluding/index.md b/docs/boots/com.agoda.boots/-key/-excluding/index.md
index f1bf5d8..91b0c41 100644
--- a/docs/boots/com.agoda.boots/-key/-excluding/index.md
+++ b/docs/boots/com.agoda.boots/-key/-excluding/index.md
@@ -2,7 +2,7 @@
# Excluding
-`class Excluding : `[`Key`](../index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](../-single/index.md)`>`
+`class Excluding : `[`Key`](../index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](../-single/index.md)`>`
Excluding key. Marks all available keys except given set of [single](../-single/index.md) keys.
@@ -14,7 +14,7 @@ Excluding key. Marks all available keys except given set of [single](../-single/
| Name | Summary |
|---|---|
-| [<init>](-init-.md) | `Excluding(keys: `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](../-single/index.md)`>)`
Excluding key. Marks all available keys except given set of [single](../-single/index.md) keys. |
+| [<init>](-init-.md) | `Excluding(keys: `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](../-single/index.md)`>)`
Excluding key. Marks all available keys except given set of [single](../-single/index.md) keys. |
### Properties
@@ -36,11 +36,11 @@ Excluding key. Marks all available keys except given set of [single](../-single/
| Name | Summary |
|---|---|
-| [contains](contains.md) | `fun contains(element: `[`Single`](../-single/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [containsAll](contains-all.md) | `fun containsAll(elements: `[`Collection`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html)`<`[`Single`](../-single/index.md)`>): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [contains](contains.md) | `fun contains(element: `[`Key.Single`](../-single/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [containsAll](contains-all.md) | `fun containsAll(elements: `[`Collection`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html)`<`[`Key.Single`](../-single/index.md)`>): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [equals](equals.md) | `fun equals(other: `[`Any`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)`?): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [hashCode](hash-code.md) | `fun hashCode(): `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
| [isEmpty](is-empty.md) | `fun isEmpty(): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isNotEmpty](is-not-empty.md) | `fun isNotEmpty(): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Checks if this key is not empty |
-| [iterator](iterator.md) | `fun iterator(): `[`Iterator`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterator/index.html)`<`[`Single`](../-single/index.md)`>` |
+| [iterator](iterator.md) | `fun iterator(): `[`Iterator`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterator/index.html)`<`[`Key.Single`](../-single/index.md)`>` |
| [toString](to-string.md) | `fun toString(): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
diff --git a/docs/boots/com.agoda.boots/-key/-excluding/iterator.md b/docs/boots/com.agoda.boots/-key/-excluding/iterator.md
index a83facd..baf229a 100644
--- a/docs/boots/com.agoda.boots/-key/-excluding/iterator.md
+++ b/docs/boots/com.agoda.boots/-key/-excluding/iterator.md
@@ -2,4 +2,4 @@
# iterator
-`fun iterator(): `[`Iterator`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterator/index.html)`<`[`Single`](../-single/index.md)`>`
\ No newline at end of file
+`fun iterator(): `[`Iterator`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterator/index.html)`<`[`Key.Single`](../-single/index.md)`>`
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-key/-multiple/-init-.md b/docs/boots/com.agoda.boots/-key/-multiple/-init-.md
index baf6ec7..a2d9fe8 100644
--- a/docs/boots/com.agoda.boots/-key/-multiple/-init-.md
+++ b/docs/boots/com.agoda.boots/-key/-multiple/-init-.md
@@ -2,7 +2,7 @@
# <init>
-`Multiple(keys: `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](../-single/index.md)`>)`
+`Multiple(keys: `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](../-single/index.md)`>)`
Multiple key. Marks a set of [single](../-single/index.md) keys.
diff --git a/docs/boots/com.agoda.boots/-key/-multiple/contains-all.md b/docs/boots/com.agoda.boots/-key/-multiple/contains-all.md
index 8531890..f042c6b 100644
--- a/docs/boots/com.agoda.boots/-key/-multiple/contains-all.md
+++ b/docs/boots/com.agoda.boots/-key/-multiple/contains-all.md
@@ -2,4 +2,4 @@
# containsAll
-`fun containsAll(elements: `[`Collection`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html)`<`[`Single`](../-single/index.md)`>): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
\ No newline at end of file
+`fun containsAll(elements: `[`Collection`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html)`<`[`Key.Single`](../-single/index.md)`>): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-key/-multiple/contains.md b/docs/boots/com.agoda.boots/-key/-multiple/contains.md
index b0a2612..07c9e95 100644
--- a/docs/boots/com.agoda.boots/-key/-multiple/contains.md
+++ b/docs/boots/com.agoda.boots/-key/-multiple/contains.md
@@ -2,4 +2,4 @@
# contains
-`fun contains(element: `[`Single`](../-single/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
\ No newline at end of file
+`fun contains(element: `[`Key.Single`](../-single/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-key/-multiple/index.md b/docs/boots/com.agoda.boots/-key/-multiple/index.md
index 7b63329..65dac0f 100644
--- a/docs/boots/com.agoda.boots/-key/-multiple/index.md
+++ b/docs/boots/com.agoda.boots/-key/-multiple/index.md
@@ -2,7 +2,7 @@
# Multiple
-`class Multiple : `[`Key`](../index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](../-single/index.md)`>`
+`class Multiple : `[`Key`](../index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](../-single/index.md)`>`
Multiple key. Marks a set of [single](../-single/index.md) keys.
@@ -14,7 +14,7 @@ Multiple key. Marks a set of [single](../-single/index.md) keys.
| Name | Summary |
|---|---|
-| [<init>](-init-.md) | `Multiple(keys: `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](../-single/index.md)`>)`
Multiple key. Marks a set of [single](../-single/index.md) keys. |
+| [<init>](-init-.md) | `Multiple(keys: `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](../-single/index.md)`>)`
Multiple key. Marks a set of [single](../-single/index.md) keys. |
### Properties
@@ -36,11 +36,11 @@ Multiple key. Marks a set of [single](../-single/index.md) keys.
| Name | Summary |
|---|---|
-| [contains](contains.md) | `fun contains(element: `[`Single`](../-single/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
-| [containsAll](contains-all.md) | `fun containsAll(elements: `[`Collection`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html)`<`[`Single`](../-single/index.md)`>): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [contains](contains.md) | `fun contains(element: `[`Key.Single`](../-single/index.md)`): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
+| [containsAll](contains-all.md) | `fun containsAll(elements: `[`Collection`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-collection/index.html)`<`[`Key.Single`](../-single/index.md)`>): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [equals](equals.md) | `fun equals(other: `[`Any`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html)`?): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [hashCode](hash-code.md) | `fun hashCode(): `[`Int`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-int/index.html) |
| [isEmpty](is-empty.md) | `fun isEmpty(): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html) |
| [isNotEmpty](is-not-empty.md) | `fun isNotEmpty(): `[`Boolean`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-boolean/index.html)
Checks if this key is not empty |
-| [iterator](iterator.md) | `fun iterator(): `[`Iterator`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterator/index.html)`<`[`Single`](../-single/index.md)`>` |
+| [iterator](iterator.md) | `fun iterator(): `[`Iterator`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterator/index.html)`<`[`Key.Single`](../-single/index.md)`>` |
| [toString](to-string.md) | `fun toString(): `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html) |
diff --git a/docs/boots/com.agoda.boots/-key/-multiple/iterator.md b/docs/boots/com.agoda.boots/-key/-multiple/iterator.md
index 9e8952a..c3baf6a 100644
--- a/docs/boots/com.agoda.boots/-key/-multiple/iterator.md
+++ b/docs/boots/com.agoda.boots/-key/-multiple/iterator.md
@@ -2,4 +2,4 @@
# iterator
-`fun iterator(): `[`Iterator`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterator/index.html)`<`[`Single`](../-single/index.md)`>`
\ No newline at end of file
+`fun iterator(): `[`Iterator`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-iterator/index.html)`<`[`Key.Single`](../-single/index.md)`>`
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-key/all.md b/docs/boots/com.agoda.boots/-key/all.md
index 57f5d47..c7d4eef 100644
--- a/docs/boots/com.agoda.boots/-key/all.md
+++ b/docs/boots/com.agoda.boots/-key/all.md
@@ -2,7 +2,7 @@
# all
-`@JvmStatic fun all(): `[`All`](-all/index.md)
+`@JvmStatic fun all(): `[`Key.All`](-all/index.md)
Creates an instance of [All](-all/index.md) key.
diff --git a/docs/boots/com.agoda.boots/-key/critical.md b/docs/boots/com.agoda.boots/-key/critical.md
index 6c2d39a..a107992 100644
--- a/docs/boots/com.agoda.boots/-key/critical.md
+++ b/docs/boots/com.agoda.boots/-key/critical.md
@@ -2,7 +2,7 @@
# critical
-`@JvmStatic fun critical(): `[`Critical`](-critical/index.md)
+`@JvmStatic fun critical(): `[`Key.Critical`](-critical/index.md)
Creates an instance of [Critical](-critical/index.md) key.
diff --git a/docs/boots/com.agoda.boots/-key/excluding.md b/docs/boots/com.agoda.boots/-key/excluding.md
index 8c6a80d..bc99fcf 100644
--- a/docs/boots/com.agoda.boots/-key/excluding.md
+++ b/docs/boots/com.agoda.boots/-key/excluding.md
@@ -2,7 +2,7 @@
# excluding
-`@JvmStatic fun excluding(vararg keys: `[`Single`](-single/index.md)` = emptyArray()): `[`Excluding`](-excluding/index.md)
+`@JvmStatic fun excluding(vararg keys: `[`Key.Single`](-single/index.md)` = emptyArray()): `[`Key.Excluding`](-excluding/index.md)
Creates an instance of [Excluding](-excluding/index.md) key.
diff --git a/docs/boots/com.agoda.boots/-key/index.md b/docs/boots/com.agoda.boots/-key/index.md
index b95b2c3..06ffbea 100644
--- a/docs/boots/com.agoda.boots/-key/index.md
+++ b/docs/boots/com.agoda.boots/-key/index.md
@@ -15,8 +15,8 @@ by any other means while operating with [keys](./index.md), which are lightweigh
|---|---|
| [All](-all/index.md) | `class All : `[`Key`](./index.md)
All key. Used to select all available [bootables](../-bootable/index.md) in the system. |
| [Critical](-critical/index.md) | `class Critical : `[`Key`](./index.md)
Critical key. Used to select all [bootables](../-bootable/index.md) that have their [isCritical](../-bootable/is-critical.md) flag set to `true` |
-| [Excluding](-excluding/index.md) | `class Excluding : `[`Key`](./index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](-single/index.md)`>`
Excluding key. Marks all available keys except given set of [single](-single/index.md) keys. |
-| [Multiple](-multiple/index.md) | `class Multiple : `[`Key`](./index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](-single/index.md)`>`
Multiple key. Marks a set of [single](-single/index.md) keys. |
+| [Excluding](-excluding/index.md) | `class Excluding : `[`Key`](./index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](-single/index.md)`>`
Excluding key. Marks all available keys except given set of [single](-single/index.md) keys. |
+| [Multiple](-multiple/index.md) | `class Multiple : `[`Key`](./index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](-single/index.md)`>`
Multiple key. Marks a set of [single](-single/index.md) keys. |
| [Single](-single/index.md) | `class Single : `[`Key`](./index.md)
Single key. Marks specific [bootable](../-bootable/index.md) in the system. |
### Properties
@@ -33,11 +33,11 @@ by any other means while operating with [keys](./index.md), which are lightweigh
| Name | Summary |
|---|---|
-| [all](all.md) | `fun all(): `[`All`](-all/index.md)
Creates an instance of [All](-all/index.md) key. |
-| [critical](critical.md) | `fun critical(): `[`Critical`](-critical/index.md)
Creates an instance of [Critical](-critical/index.md) key. |
-| [excluding](excluding.md) | `fun excluding(vararg keys: `[`Single`](-single/index.md)` = emptyArray()): `[`Excluding`](-excluding/index.md)
Creates an instance of [Excluding](-excluding/index.md) key. |
-| [multiple](multiple.md) | `fun multiple(vararg keys: `[`Single`](-single/index.md)` = emptyArray()): `[`Multiple`](-multiple/index.md)
Creates an instance of [Multiple](-multiple/index.md) key. |
-| [single](single.md) | `fun single(id: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = ""): `[`Single`](-single/index.md)
Creates an instance of [Single](-single/index.md) key. |
+| [all](all.md) | `fun all(): `[`Key.All`](-all/index.md)
Creates an instance of [All](-all/index.md) key. |
+| [critical](critical.md) | `fun critical(): `[`Key.Critical`](-critical/index.md)
Creates an instance of [Critical](-critical/index.md) key. |
+| [excluding](excluding.md) | `fun excluding(vararg keys: `[`Key.Single`](-single/index.md)` = emptyArray()): `[`Key.Excluding`](-excluding/index.md)
Creates an instance of [Excluding](-excluding/index.md) key. |
+| [multiple](multiple.md) | `fun multiple(vararg keys: `[`Key.Single`](-single/index.md)` = emptyArray()): `[`Key.Multiple`](-multiple/index.md)
Creates an instance of [Multiple](-multiple/index.md) key. |
+| [single](single.md) | `fun single(id: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = ""): `[`Key.Single`](-single/index.md)
Creates an instance of [Single](-single/index.md) key. |
### Inheritors
@@ -45,6 +45,6 @@ by any other means while operating with [keys](./index.md), which are lightweigh
|---|---|
| [All](-all/index.md) | `class All : `[`Key`](./index.md)
All key. Used to select all available [bootables](../-bootable/index.md) in the system. |
| [Critical](-critical/index.md) | `class Critical : `[`Key`](./index.md)
Critical key. Used to select all [bootables](../-bootable/index.md) that have their [isCritical](../-bootable/is-critical.md) flag set to `true` |
-| [Excluding](-excluding/index.md) | `class Excluding : `[`Key`](./index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](-single/index.md)`>`
Excluding key. Marks all available keys except given set of [single](-single/index.md) keys. |
-| [Multiple](-multiple/index.md) | `class Multiple : `[`Key`](./index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Single`](-single/index.md)`>`
Multiple key. Marks a set of [single](-single/index.md) keys. |
+| [Excluding](-excluding/index.md) | `class Excluding : `[`Key`](./index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](-single/index.md)`>`
Excluding key. Marks all available keys except given set of [single](-single/index.md) keys. |
+| [Multiple](-multiple/index.md) | `class Multiple : `[`Key`](./index.md)`, `[`Set`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-set/index.html)`<`[`Key.Single`](-single/index.md)`>`
Multiple key. Marks a set of [single](-single/index.md) keys. |
| [Single](-single/index.md) | `class Single : `[`Key`](./index.md)
Single key. Marks specific [bootable](../-bootable/index.md) in the system. |
diff --git a/docs/boots/com.agoda.boots/-key/multiple.md b/docs/boots/com.agoda.boots/-key/multiple.md
index 8bbb7b3..1c23a56 100644
--- a/docs/boots/com.agoda.boots/-key/multiple.md
+++ b/docs/boots/com.agoda.boots/-key/multiple.md
@@ -2,7 +2,7 @@
# multiple
-`@JvmStatic fun multiple(vararg keys: `[`Single`](-single/index.md)` = emptyArray()): `[`Multiple`](-multiple/index.md)
+`@JvmStatic fun multiple(vararg keys: `[`Key.Single`](-single/index.md)` = emptyArray()): `[`Key.Multiple`](-multiple/index.md)
Creates an instance of [Multiple](-multiple/index.md) key.
diff --git a/docs/boots/com.agoda.boots/-key/single.md b/docs/boots/com.agoda.boots/-key/single.md
index 4cf8322..12e7f20 100644
--- a/docs/boots/com.agoda.boots/-key/single.md
+++ b/docs/boots/com.agoda.boots/-key/single.md
@@ -2,7 +2,7 @@
# single
-`@JvmStatic fun single(id: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = ""): `[`Single`](-single/index.md)
+`@JvmStatic fun single(id: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)` = ""): `[`Key.Single`](-single/index.md)
Creates an instance of [Single](-single/index.md) key.
diff --git a/docs/boots/com.agoda.boots/-logger/index.md b/docs/boots/com.agoda.boots/-logger/index.md
index d0f2f70..3e5fd55 100644
--- a/docs/boots/com.agoda.boots/-logger/index.md
+++ b/docs/boots/com.agoda.boots/-logger/index.md
@@ -17,4 +17,4 @@ There is no default implementation provided with the core module.
| Name | Summary |
|---|---|
-| [log](log.md) | `abstract fun log(level: `[`Level`](-level/index.md)`, message: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`abstract fun log(level: `[`Level`](-level/index.md)`, message: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, throwable: `[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) |
+| [log](log.md) | `abstract fun log(level: `[`Logger.Level`](-level/index.md)`, message: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
`abstract fun log(level: `[`Logger.Level`](-level/index.md)`, message: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, throwable: `[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html) |
diff --git a/docs/boots/com.agoda.boots/-logger/log.md b/docs/boots/com.agoda.boots/-logger/log.md
index db62428..3d1d137 100644
--- a/docs/boots/com.agoda.boots/-logger/log.md
+++ b/docs/boots/com.agoda.boots/-logger/log.md
@@ -2,5 +2,5 @@
# log
-`abstract fun log(level: `[`Level`](-level/index.md)`, message: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
-`abstract fun log(level: `[`Level`](-level/index.md)`, message: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, throwable: `[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
\ No newline at end of file
+`abstract fun log(level: `[`Logger.Level`](-level/index.md)`, message: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
+`abstract fun log(level: `[`Logger.Level`](-level/index.md)`, message: `[`String`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html)`, throwable: `[`Throwable`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-throwable/index.html)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
\ No newline at end of file
diff --git a/docs/boots/com.agoda.boots/-notifier/index.md b/docs/boots/com.agoda.boots/-notifier/index.md
index f4c1cda..a94c026 100644
--- a/docs/boots/com.agoda.boots/-notifier/index.md
+++ b/docs/boots/com.agoda.boots/-notifier/index.md
@@ -24,7 +24,7 @@ is going to be garbage collected.
| Name | Summary |
|---|---|
| [add](add.md) | `abstract fun add(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Enables given listener to receive event callbacks for given key. |
-| [notify](notify.md) | `abstract fun notify(key: `[`Single`](../-key/-single/index.md)`, report: `[`Report`](../-report/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Informs the notifier about bootable state change in the boot system so that it can check if there is any listener that it need to call back and invoke any found ones. |
+| [notify](notify.md) | `abstract fun notify(key: `[`Key.Single`](../-key/-single/index.md)`, report: `[`Report`](../-report/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Informs the notifier about bootable state change in the boot system so that it can check if there is any listener that it need to call back and invoke any found ones. |
| [remove](remove.md) | `abstract fun remove(key: `[`Key`](../-key/index.md)`, listener: `[`Listener`](../-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Disables given listener to receive event callbacks for given key.`abstract fun remove(listener: `[`Listener`](../-listener/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Disables given listener to receive event callbacks for all events. |
### Inherited Functions
@@ -34,8 +34,8 @@ is going to be garbage collected.
| [add](../-holder/add.md) | `open fun add(bootables: `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Adds bootables to the storage and maps it with corresponding keys for easier access. |
| [all](../-holder/all.md) | `open fun all(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves all available bootables to the system. |
| [critical](../-holder/critical.md) | `open fun critical(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that have thier [isCritical](../-bootable/is-critical.md) flag set to `true`. |
-| [excluding](../-holder/excluding.md) | `open fun excluding(key: `[`Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key. |
-| [multiple](../-holder/multiple.md) | `open fun multiple(key: `[`Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key. |
+| [excluding](../-holder/excluding.md) | `open fun excluding(key: `[`Key.Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key. |
+| [multiple](../-holder/multiple.md) | `open fun multiple(key: `[`Key.Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key. |
### Inheritors
diff --git a/docs/boots/com.agoda.boots/-notifier/notify.md b/docs/boots/com.agoda.boots/-notifier/notify.md
index d92a0b7..c0ecac3 100644
--- a/docs/boots/com.agoda.boots/-notifier/notify.md
+++ b/docs/boots/com.agoda.boots/-notifier/notify.md
@@ -2,7 +2,7 @@
# notify
-`abstract fun notify(key: `[`Single`](../-key/-single/index.md)`, report: `[`Report`](../-report/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
+`abstract fun notify(key: `[`Key.Single`](../-key/-single/index.md)`, report: `[`Report`](../-report/index.md)`): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Informs the notifier about bootable state change in the boot system
so that it can check if there is any listener that it need to call back
diff --git a/docs/boots/com.agoda.boots/-reporter/index.md b/docs/boots/com.agoda.boots/-reporter/index.md
index bbdb6e1..f2e0e89 100644
--- a/docs/boots/com.agoda.boots/-reporter/index.md
+++ b/docs/boots/com.agoda.boots/-reporter/index.md
@@ -32,7 +32,7 @@ Default rules for the calculation of common status are as follows:
| Name | Summary |
|---|---|
| [get](get.md) | `abstract fun get(key: `[`Key`](../-key/index.md)`): `[`Report`](../-report/index.md)
Retrieves the [report](../-report/index.md) for a given key. In case where [key](get.md#com.agoda.boots.Reporter$get(com.agoda.boots.Key)/key) is not [single](../-key/-single/index.md), reporter generates combined report based on the type of the [key](get.md#com.agoda.boots.Reporter$get(com.agoda.boots.Key)/key). |
-| [set](set.md) | `abstract fun set(key: `[`Single`](../-key/-single/index.md)`, status: `[`Status`](../-status/index.md)`, start: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)` = -1L, time: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)` = -1L): `[`Report`](../-report/index.md)
Saves the report data from a controller [object](../-boots/index.md). |
+| [set](set.md) | `abstract fun set(key: `[`Key.Single`](../-key/-single/index.md)`, status: `[`Status`](../-status/index.md)`, start: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)` = -1L, time: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)` = -1L): `[`Report`](../-report/index.md)
Saves the report data from a controller [object](../-boots/index.md). |
### Inherited Functions
@@ -41,8 +41,8 @@ Default rules for the calculation of common status are as follows:
| [add](../-holder/add.md) | `open fun add(bootables: `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Adds bootables to the storage and maps it with corresponding keys for easier access. |
| [all](../-holder/all.md) | `open fun all(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves all available bootables to the system. |
| [critical](../-holder/critical.md) | `open fun critical(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that have thier [isCritical](../-bootable/is-critical.md) flag set to `true`. |
-| [excluding](../-holder/excluding.md) | `open fun excluding(key: `[`Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key. |
-| [multiple](../-holder/multiple.md) | `open fun multiple(key: `[`Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key. |
+| [excluding](../-holder/excluding.md) | `open fun excluding(key: `[`Key.Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key. |
+| [multiple](../-holder/multiple.md) | `open fun multiple(key: `[`Key.Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key. |
### Inheritors
diff --git a/docs/boots/com.agoda.boots/-reporter/set.md b/docs/boots/com.agoda.boots/-reporter/set.md
index f69380c..2eae0a6 100644
--- a/docs/boots/com.agoda.boots/-reporter/set.md
+++ b/docs/boots/com.agoda.boots/-reporter/set.md
@@ -2,7 +2,7 @@
# set
-`abstract fun set(key: `[`Single`](../-key/-single/index.md)`, status: `[`Status`](../-status/index.md)`, start: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)` = -1L, time: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)` = -1L): `[`Report`](../-report/index.md)
+`abstract fun set(key: `[`Key.Single`](../-key/-single/index.md)`, status: `[`Status`](../-status/index.md)`, start: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)` = -1L, time: `[`Long`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html)` = -1L): `[`Report`](../-report/index.md)
Saves the report data from a controller [object](../-boots/index.md).
diff --git a/docs/boots/com.agoda.boots/-sequencer/index.md b/docs/boots/com.agoda.boots/-sequencer/index.md
index b57f978..2703f56 100644
--- a/docs/boots/com.agoda.boots/-sequencer/index.md
+++ b/docs/boots/com.agoda.boots/-sequencer/index.md
@@ -34,8 +34,8 @@ put in all cases. Then sequencer provide bootables that are ready to be booted o
| [add](../-holder/add.md) | `open fun add(bootables: `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>): `[`Unit`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html)
Adds bootables to the storage and maps it with corresponding keys for easier access. |
| [all](../-holder/all.md) | `open fun all(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves all available bootables to the system. |
| [critical](../-holder/critical.md) | `open fun critical(): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that have thier [isCritical](../-bootable/is-critical.md) flag set to `true`. |
-| [excluding](../-holder/excluding.md) | `open fun excluding(key: `[`Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key. |
-| [multiple](../-holder/multiple.md) | `open fun multiple(key: `[`Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key. |
+| [excluding](../-holder/excluding.md) | `open fun excluding(key: `[`Key.Excluding`](../-key/-excluding/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables excluding ones in the given excluding key. |
+| [multiple](../-holder/multiple.md) | `open fun multiple(key: `[`Key.Multiple`](../-key/-multiple/index.md)`): `[`List`](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-list/index.html)`<`[`Bootable`](../-bootable/index.md)`>`
Retrieves instances of bootables that are included in the given multiple key. |
### Inheritors
diff --git a/gradle/scripts/dependencies.gradle b/gradle/scripts/dependencies.gradle
index 2841239..3fdc36f 100644
--- a/gradle/scripts/dependencies.gradle
+++ b/gradle/scripts/dependencies.gradle
@@ -14,8 +14,8 @@ ext.versions = [
testRunner : '1.0.2',
testRules : '1.0.2',
kakao : '1.4.0',
- boots : '1.0.0',
- bootsCode : 21,
+ boots : '1.0.1',
+ bootsCode : 22,
compileSdk : 28,
targetSdk : 28,
minSdk : 16
@@ -52,5 +52,5 @@ ext.boots = [
url : 'https://github.com/agoda-com/boots',
git : 'https://github.com/agoda-com/boots.git',
group : 'com.agoda.boots',
- version : '1.0.0'
+ version : '1.0.1'
]
diff --git a/test/build.gradle b/test/build.gradle
index f1d6544..c82f94c 100644
--- a/test/build.gradle
+++ b/test/build.gradle
@@ -9,10 +9,12 @@ sourceSets {
}
dependencies {
- implementation project(':boots')
+ implementation libraries.kotlin
implementation libraries.mockito
implementation libraries.mockitoKotlin
+ implementation project(':boots')
+
testImplementation libraries.junit
}
diff --git a/test/src/main/kotlin/com/agoda/boots/Mocker.kt b/test/src/main/kotlin/com/agoda/boots/Mocker.kt
index ee0dd14..66212e9 100644
--- a/test/src/main/kotlin/com/agoda/boots/Mocker.kt
+++ b/test/src/main/kotlin/com/agoda/boots/Mocker.kt
@@ -5,6 +5,7 @@ import com.nhaarman.mockito_kotlin.any
import com.nhaarman.mockito_kotlin.eq
import com.nhaarman.mockito_kotlin.mock
import com.nhaarman.mockito_kotlin.whenever
+import org.mockito.Mockito.lenient
/**
* This class provides easy-to-use mocking framework through Mockito library.
@@ -22,15 +23,15 @@ class Mocker @JvmOverloads constructor(tail: Mocker.() -> Unit = {}) {
private val sequencer: Sequencer = mock()
init {
- whenever(notifier.add(any(), any())).thenAnswer {
+ lenient().`when`(notifier.add(any(), any())).thenAnswer {
(it.arguments[1] as Listener).onBoot(Report(it.arguments[0] as Key, booted()))
}
- whenever(reporter.get(any())).thenAnswer {
+ lenient().`when`(reporter.get(any())).thenAnswer {
Report(it.arguments[0] as Key, booted())
}
- whenever(sequencer.count()).thenReturn(0)
+ lenient().`when`(sequencer.count()).thenReturn(0)
tail()
apply()