Aggregate Query Service
The IAggregateQueryService port defines a query interface for reading aggregates and their domain events. It has two primary uses:
The IAggregateQueryService port defines a query interface for reading aggregates and their domain events. It has two primary uses:
DugongJS is built on the ports-and-adapters architecture, also known as the hexagonal architecture. This design pattern promotes a clean separation between the core business logic and the surrounding infrastructure.
The IMessageConsumer port defines how DugongJS receives domain events as messages from external systems via a message broker. It is part of the asynchronous integration mechanism that supports event-driven microservice communication.
DugongJS defines two message mapper ports that must be implemented when producing and consuming messages containing domain events:
The IMessageProducer port defines how domain events are published from DugongJS as messages to external systems through a message broker.
DugongJS defines three repository ports that must be implemented to support persistence and event sourcing:
The ITransactionManager port provides a way to coordinate persistence operations across multiple repositories in a transactional context. This ensures that domain events, snapshots, and metadata changes are committed atomically.