EventProcessor

Marks a class as an event processor component.

Event processors are responsible for handling domain events published by aggregates. They can perform cross-aggregate operations, update read models, send notifications, or trigger external system integrations.

Event processors are automatically registered as Spring components and discovered by the framework for event routing and processing.

Example usage:

@EventProcessor
class OrderEventProcessor {

@OnEvent
fun onOrderCreated(event: OrderCreated) {
// Update inventory
inventoryService.reserveItems(event.items)

// Send confirmation email
emailService.sendOrderConfirmation(event.customerId, event.orderId)
}

@OnEvent
fun onOrderShipped(event: OrderShipped) {
// Update shipping records
shippingService.recordShipment(event.orderId, event.trackingNumber)
}
}

See also

for marking event handler methods within processors

for read model projectors

for process managers