AggregateProcessor

Processor for handling commands on a specific aggregate instance.

This interface defines the contract for processing commands against a particular aggregate, ensuring proper serialization and state management.

Parameters

C

The type of the command aggregate root.

Inheritors

Properties

Link copied to clipboard
abstract override val aggregateId: AggregateId
Link copied to clipboard
abstract val aggregateName: String
Link copied to clipboard
abstract val aggregateType: Class<C>
Link copied to clipboard
abstract val contextName: String
Link copied to clipboard
abstract val processorName: String

Functions

Link copied to clipboard
fun NamedAggregate.aggregateId(id: String = generateId(), tenantId: String = TenantId.DEFAULT_TENANT_ID): DefaultAggregateId

Creates an AggregateId for this NamedAggregate with the specified parameters.

Link copied to clipboard

Finds the aggregate type class associated with this named aggregate.

Link copied to clipboard

Converts this NamedAggregate to its corresponding AggregateMetadata.

Link copied to clipboard

Generates a unique ID string for this NamedAggregate.

Link copied to clipboard
fun NamedBoundedContext.getContextAlias(boundedContext: BoundedContext? = MetadataSearcher.metadata.contexts[contextName]): String
Link copied to clipboard

Gets the context alias prefix for this bounded context.

Link copied to clipboard

Checks if the named aggregate is available locally at runtime.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
abstract override fun process(exchange: ServerCommandExchange<*>): Mono<DomainEventStream>

Processes a command exchange for this aggregate instance.

Link copied to clipboard

Finds the aggregate type class associated with this named aggregate, throwing an exception if not found.

Link copied to clipboard

Extension function to convert a NamedAggregate to an EventNamedAggregate.

Link copied to clipboard
fun AggregateIdCapable.toGroupKey(parallelism: Int = DEFAULT_PARALLELISM): Int

Computes a grouping key for parallel processing based on the aggregate ID.

Link copied to clipboard

Converts this NamedAggregate to its string representation.

Link copied to clipboard

Converts this NamedAggregate to a string representation using the context alias.