Package-level declarations

Types

Link copied to clipboard
class FeatureBuilder<T>(val feature: Feature<T>, val configBuilder: T.(FeatureContext) -> Unit)

Class that stores necessary data for building a Feature.

Link copied to clipboard
class FeatureContext(val configuration: RootConfig)

The context within which a feature gets installed.

Link copied to clipboard

This object represents a built and possibly running Tegral application.

Link copied to clipboard

Builder for a Tegral application. This class allows you to install features, tweak the application's configuration, add modules, classes and components of your own, etc. This is the class that is used as a receiver within the tegral block.

Link copied to clipboard

DSL interface for configurating Tegral applications.

Link copied to clipboard

Builder for a TegralCustomFeature specifically tailored to contain the logic from the tegral block.

Link copied to clipboard
class TegralCustomFeature(val id: String, val name: String, val description: String, installationCallback: ContextInstallationHook) : SimpleFeature

This class allows for the dynamic creation of ad-hoc features.

Functions

Link copied to clipboard

Applies sane defaults to the given application builder. Specifically, this function:

Link copied to clipboard

Install the feature onto this application.

fun <T> TegralApplicationDsl.install(feature: Feature<T>, configBlock: T.(FeatureContext) -> Unit)

Install the feature onto this application, additionally configuring it with the provided lambda.

Link copied to clipboard
fun tegral(enableLoggingOverrides: Boolean = true, enableDefaults: Boolean = true, block: TegralApplicationDsl.() -> Unit): TegralApplication

Starting block for creating, configuring and launching a Tegral application. This function:

Link copied to clipboard
inline fun <T : RootConfig> TegralApplicationDsl.useConfiguration(noinline configuration: ConfigLoaderBuilder.() -> Unit = {})

Equivalent to TegralApplicationDsl.useConfiguration, but uses a reified type instead.

Properties

Link copied to clipboard

Returns all the features that were installed in this application.

Link copied to clipboard

Returns all the features that additionally implement LifecycleHookedFeature that were installed in this application.