Package-level declarations

Types

Link copied to clipboard
@OnMessage(functionKind = FunctionKind.COMMAND, defaultFunctionName = "afterCommand")
annotation class AfterCommand(val include: Array<KClass<*>> = [], val exclude: Array<KClass<*>> = [])

Marks a function to be executed after a command function completes.

Link copied to clipboard

Marks a field or property as the aggregate identifier.

Link copied to clipboard

Marks a field or property as containing the aggregate type name.

Link copied to clipboard
annotation class AggregateRoot(val commands: Array<KClass<*>> = [])

Marks a class as an aggregate root in the domain-driven design pattern.

Link copied to clipboard
annotation class AggregateRoute(val resourceName: String = "", val enabled: Boolean = true, val owner: AggregateRoute.Owner = Owner.NEVER)

Configures routing and ownership behavior for aggregate operations.

Link copied to clipboard

Marks a field or property as containing the aggregate version for optimistic concurrency control.

Link copied to clipboard

Allows creation of a new aggregate instance if one doesn't already exist.

Link copied to clipboard
annotation class Blocking

Marks a function as blocking, indicating it should not be executed asynchronously.

Link copied to clipboard
annotation class BoundedContext(val name: String, val alias: String = "", val description: String = "", val scopes: Array<String> = [], val packageScopes: Array<KClass<*>> = [], val aggregates: Array<BoundedContext.Aggregate> = [])

Defines a bounded context in domain-driven design (DDD).

Link copied to clipboard
annotation class CommandRoute(val action: String = DEFAULT_COMMAND_ACTION, val enabled: Boolean = true, val method: CommandRoute.Method = Method.DEFAULT, val prefix: String = "", val appendIdPath: CommandRoute.AppendPath = AppendPath.DEFAULT, val appendTenantPath: CommandRoute.AppendPath = AppendPath.DEFAULT, val appendOwnerPath: CommandRoute.AppendPath = AppendPath.DEFAULT)

Configures routing and HTTP endpoint generation for command classes.

Link copied to clipboard

Marks a command as one that creates new aggregate instances.

Link copied to clipboard

Provides a human-readable description for annotated elements.

Link copied to clipboard

Marks a class as a domain entity in domain-driven design (DDD).

Link copied to clipboard
annotation class Event(val revision: String = DEFAULT_REVISION)

Marks a class as a domain event in domain-driven design (DDD).

Link copied to clipboard

Marks a class as an event processor component.

Link copied to clipboard
annotation class Generated(val value: String = "", val date: String = "")

Indicates that an element was auto-generated by a tool or code generator.

Link copied to clipboard
annotation class Name(val value: String)

Specifies a custom name for an annotated element.

Link copied to clipboard
@OnMessage(functionKind = FunctionKind.COMMAND, defaultFunctionName = "onCommand")
annotation class OnCommand(val returns: Array<KClass<*>> = [])

Marks a function as a command handler within an aggregate.

Link copied to clipboard
@OnMessage(functionKind = FunctionKind.ERROR, defaultFunctionName = "onError")
annotation class OnError

Marks a function as a command error handler within an aggregate.

Link copied to clipboard
@OnMessage(functionKind = FunctionKind.EVENT, defaultFunctionName = "onEvent")
annotation class OnEvent(val value: String)

Marks a function as a domain event handler.

Link copied to clipboard
annotation class OnMessage(val functionKind: FunctionKind, val defaultFunctionName: String)

Base annotation for message handler functions.

Link copied to clipboard
@OnMessage(functionKind = FunctionKind.SOURCING, defaultFunctionName = "onSourcing")
annotation class OnSourcing

Marks a function as a state sourcing handler.

Link copied to clipboard
@OnMessage(functionKind = FunctionKind.STATE_EVENT, defaultFunctionName = "onStateEvent")
annotation class OnStateEvent(val value: String)

Marks a function as a state event handler for real-time state change notifications.

Link copied to clipboard
annotation class Order(val value: Int = ORDER_DEFAULT, val before: Array<KClass<*>> = [], val after: Array<KClass<*>> = [])

Specifies the execution order for annotated elements.

Link copied to clipboard

Marks a field or property as containing the owner identifier for multi-tenant scenarios.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.CLASS])
@Component
annotation class PreparableKey(val name: String = "")

Marks an interface as a PrepareKey for optimistic concurrency control and resource reservation.

Link copied to clipboard

Marks a class as a projection processor for maintaining read models.

Link copied to clipboard
@Target(allowedTargets = [AnnotationTarget.FUNCTION])
annotation class Retry(val enabled: Boolean = true, val maxRetries: Int = DEFAULT_MAX_RETRIES, val minBackoff: Int = DEFAULT_MIN_BACKOFF, val executionTimeout: Int = DEFAULT_EXECUTION_TIMEOUT, val recoverable: Array<KClass<out Throwable>> = [], val unrecoverable: Array<KClass<out Throwable>> = [])

Enables retry mechanism for annotated functions with configurable retry policies.

Link copied to clipboard

Marks a class as a stateless saga for orchestrating complex business processes.

Link copied to clipboard

Specifies a static aggregate ID for classes that represent single-instance aggregates.

Link copied to clipboard
annotation class StaticTenantId(val tenantId: String = TenantId.DEFAULT_TENANT_ID)

Specifies a static tenant ID for classes that belong to a fixed tenant.

Link copied to clipboard

Provides a concise summary for annotated elements.

Link copied to clipboard

Marks a field or property as containing the tenant identifier for multi-tenant applications.

Link copied to clipboard

Marks a class as a value object in domain-driven design (DDD).

Link copied to clipboard

Marks a command as a void command that doesn't require aggregate processing.

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
const val ORDER_DEFAULT: Int = 0
Link copied to clipboard
const val ORDER_DEFAULT_STEP: Int = 100
Link copied to clipboard
const val ORDER_FIRST: Int
Link copied to clipboard
const val ORDER_LAST: Int