Package-level declarations
Types
Link copied to clipboard
abstract class AbstractAggregateEventDispatcher<E : MessageExchange<*, DomainEventStream>> : AggregateMessageDispatcher<E>
Link copied to clipboard
Link copied to clipboard
abstract class AbstractEventFunctionRegistrar(val delegate: MessageFunctionRegistrar<MessageFunction<Any, DomainEventExchange<*>, Mono<*>>> = SimpleMessageFunctionRegistrar()) : MessageFunctionRegistrar<MessageFunction<Any, DomainEventExchange<*>, Mono<*>>> , Decorator<MessageFunctionRegistrar<MessageFunction<Any, DomainEventExchange<*>, Mono<*>>>>
Link copied to clipboard
class AggregateEventDispatcher(val namedAggregate: NamedAggregate, val name: String = "-", val parallelism: Int = MessageParallelism.DEFAULT_PARALLELISM, val messageFlux: Flux<EventStreamExchange>, val functionRegistrar: MessageFunctionRegistrar<MessageFunction<Any, DomainEventExchange<*>, Mono<*>>>, val eventHandler: EventHandler, val scheduler: Scheduler) : AbstractAggregateEventDispatcher<EventStreamExchange>
Link copied to clipboard
class AggregateStateEventDispatcher(val namedAggregate: NamedAggregate, val name: String = "-", val parallelism: Int = MessageParallelism.DEFAULT_PARALLELISM, val messageFlux: Flux<StateEventExchange<*>>, val functionRegistrar: MessageFunctionRegistrar<MessageFunction<Any, DomainEventExchange<*>, Mono<*>>>, val eventHandler: EventHandler, val scheduler: Scheduler) : AbstractAggregateEventDispatcher<StateEventExchange<*>>
Link copied to clipboard
class DefaultDomainEventHandler(chain: FilterChain<DomainEventExchange<*>>, errorHandler: ErrorHandler<DomainEventExchange<*>> = LogResumeErrorHandler()) : AbstractHandler<DomainEventExchange<*>> , DomainEventHandler
Link copied to clipboard
Link copied to clipboard
Domain Event Bus.
Link copied to clipboard
class DomainEventDispatcher(val name: String, val parallelism: Int = MessageParallelism.DEFAULT_PARALLELISM, val domainEventBus: DomainEventBus, val stateEventBus: StateEventBus, val functionRegistrar: DomainEventFunctionRegistrar, val eventHandler: DomainEventHandler, schedulerSupplier: AggregateSchedulerSupplier = DefaultAggregateSchedulerSupplier("EventDispatcher")) : AbstractEventDispatcher<Mono<*>>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open class DomainEventFunctionFilter(serviceProvider: ServiceProvider) : ExchangeFilter<DomainEventExchange<*>>
Link copied to clipboard
class DomainEventFunctionRegistrar(actual: MessageFunctionRegistrar<MessageFunction<Any, DomainEventExchange<*>, Mono<*>>> = SimpleMessageFunctionRegistrar()) : AbstractEventFunctionRegistrar
Link copied to clipboard
Link copied to clipboard
interface DomainEventStream : NamedBoundedContextMessage<DomainEventStream, List<DomainEvent<*>>> , RequestId, CommandId, NamedAggregate, Version, Iterable<DomainEvent<*>> , AggregateIdCapable, Copyable<DomainEventStream>
Event Stream . Relation: Event Stream
1:1 CommandId
.
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
class InMemoryDomainEventBus(val sinkSupplier: (NamedAggregate) -> Sinks.Many<DomainEventStream> = {
Sinks.many().multicast().onBackpressureBuffer()
}) : InMemoryMessageBus<DomainEventStream, EventStreamExchange> , LocalDomainEventBus
Link copied to clipboard
Link copied to clipboard
class LocalFirstDomainEventBus(val distributedBus: DistributedDomainEventBus, val localBus: LocalDomainEventBus = InMemoryDomainEventBus()) : DomainEventBus, LocalFirstMessageBus<DomainEventStream, EventStreamExchange>
Link copied to clipboard
Link copied to clipboard
data class SimpleDomainEvent<T : Any>(val id: String = GlobalIdGenerator.generateAsString(), val header: Header = DefaultHeader.empty(), val body: T, val aggregateId: AggregateId, val version: Int, val sequence: Int = DEFAULT_EVENT_SEQUENCE, val revision: String = DEFAULT_REVISION, val commandId: String, val name: String = body.javaClass.toName(), val isLast: Boolean = true, val createTime: Long = System.currentTimeMillis()) : DomainEvent<T> , NamedAggregate
Link copied to clipboard
class SimpleDomainEventExchange<T : Any>(val message: DomainEvent<T>, val attributes: MutableMap<String, Any> = ConcurrentHashMap()) : DomainEventExchange<T>
Link copied to clipboard
data class SimpleDomainEventStream(val id: String = GlobalIdGenerator.generateAsString(), val requestId: String, val header: Header = DefaultHeader.empty(), val body: List<DomainEvent<*>>) : DomainEventStream, Iterable<DomainEvent<*>>
Link copied to clipboard
class SimpleEventStreamExchange(val message: DomainEventStream, val attributes: MutableMap<String, Any> = ConcurrentHashMap()) : EventStreamExchange
Link copied to clipboard
class SimpleStateDomainEventExchange<S : Any, T : Any>(val state: ReadOnlyStateAggregate<S>, val message: DomainEvent<T>, val attributes: MutableMap<String, Any> = ConcurrentHashMap()) : StateDomainEventExchange<S, T>
Link copied to clipboard
Functions
Link copied to clipboard
Link copied to clipboard
fun <T : Any> T.toDomainEvent(aggregateId: AggregateId, commandId: String, id: String = generateGlobalId(), version: Int = Version.INITIAL_VERSION, sequence: Int = DEFAULT_EVENT_SEQUENCE, isLast: Boolean = true, header: Header = DefaultHeader.empty(), createTime: Long = System.currentTimeMillis()): DomainEvent<T>
fun <T : Any> T.toDomainEvent(aggregateId: String, tenantId: String, commandId: String, id: String = generateGlobalId(), version: Int = Version.INITIAL_VERSION, sequence: Int = DEFAULT_EVENT_SEQUENCE, isLast: Boolean = true, header: Header = DefaultHeader.empty(), createTime: Long = System.currentTimeMillis()): DomainEvent<T>
Link copied to clipboard
fun Any.toDomainEventStream(upstream: CommandMessage<*>, aggregateVersion: Int, header: Header = DefaultHeader.empty()): DomainEventStream