All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.jexxa.addend.applicationcore.Observer Maven / Gradle / Ivy

package io.jexxa.addend.applicationcore;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.Target;

import static java.lang.annotation.ElementType.TYPE;
import static java.lang.annotation.RetentionPolicy.RUNTIME;


/**
 * The {@link Observer} pattern is often used within a DDD application to send domain events via a so-called
 * DomainEventPublisher which is part of the domain. Relevant discussions about this pattern including
 * examples can be found in the book "Implementing Domain-Driven Design" by Vaughn Vernon.
 * 

* Although the Observer Pattern is not actually a pattern of the DDD pattern language, this annotation * is provided to explicitly represent this pattern within the domain. * */ @Target(TYPE) @Retention(RUNTIME) @Documented public @interface Observer { }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy