Source code for examples.aggregate2.domainmodel

from __future__ import annotations

from eventsourcing.domain import Aggregate, event


[docs] class Dog(Aggregate):
[docs] class Registered(Aggregate.Created): name: str
[docs] class TrickAdded(Aggregate.Event): trick: str
@event(Registered) def __init__(self, name: str) -> None: self.name = name self.tricks: list[str] = []
[docs] @event(TrickAdded) def add_trick(self, trick: str) -> None: self.tricks.append(trick)