-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
architectureAlteração na arquiteturaAlteração na arquiteturaenhancementNew feature or requestNew feature or request
Description
Título: Adicionar Domain Events como first-class citizens
Labels: enhancement, architecture, clean-architecture
Descrição:
Eventos devem ser parte integral do modelo de domínio.
Solução Proposta:
// CORE - Aggregate Root base
public abstract class AggregateRoot {
private final List<DomainEvent> domainEvents = new ArrayList<>();
protected void raiseEvent(DomainEvent event) {
domainEvents.add(event);
}
public List<DomainEvent> getUncommittedEvents() {
return new ArrayList<>(domainEvents);
}
}Tarefas:
- Criar
AggregateRootbase class - Fazer Wallet estender AggregateRoot
- Criar eventos específicos (WalletCreated, MoneyDeposited, etc.)
- Implementar Event Store pattern
- Criar Domain Event Handlers
Metadata
Metadata
Assignees
Labels
architectureAlteração na arquiteturaAlteração na arquiteturaenhancementNew feature or requestNew feature or request