add a domain event implementation