ServiceProvider

interface ServiceProvider

Service providers create instances of services

Types

Link copied to clipboard
data class CreatedInstance(val instance: Any, val createdAt: Instant)

Tracks created service instances

Link copied to clipboard
data class ForInstance : ServiceProvider

Provides an already existing object as a service

Link copied to clipboard
data class ForPrototype : ServiceProvider

Provides a prototype service

Link copied to clipboard
data class ForSingleton : ServiceProvider

Provides a global singleton service

Link copied to clipboard
interface Provider

Provides a ServiceProvider

Link copied to clipboard
enum Type : Enum<ServiceProvider.Type>

Ways in which services are provided.

Functions

Link copied to clipboard
abstract fun provide(kontainer: Kontainer, context: InjectionContext): Any

Provides the service instance

Link copied to clipboard
abstract fun validate(kontainer: Kontainer): List<String>

Validates that a service can be provided.

Properties

Link copied to clipboard
abstract val definition: ServiceDefinition

The definition of the service.

Link copied to clipboard
abstract val instances: List<ServiceProvider.CreatedInstance>

A list of all instances created by the provider.

Link copied to clipboard
abstract val type: ServiceProvider.Type

The type of the service that is created.

Inheritors

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard