@Documented @Retention(value=RUNTIME) @Target(value={METHOD,CONSTRUCTOR}) public @interface CommandHandler
AnnotationCommandHandlerAdapter
to subscribe the annotated class to the command bus.
Alternatively, the annotations may be placed on an Aggregate members, in which case the AggregateAnnotationCommandHandler
can be used to subscribe the handlers to the command bus. When the annotation
appears on an Aggregate root's constructor, that command will cause a new aggregate to be created and stored in the
repository provided with the AggregateAnnotationCommandHandler
. If a non-root entity of the Aggregate is
to handle a command, the field declaring that entity must be annotated with CommandHandlingMember
. Note that the annotation may not be placed on
a non-root Entity's constructor.
The annotated method's first parameter is the command handled by that method. Optionally, the command handler may
specify a second parameter of type UnitOfWork
. The active Unit of Work will be
passed if that parameter is supplied.CommandHandlingMember
Modifier and Type | Optional Element and Description |
---|---|
String |
commandName
The name of the Command this handler listens to.
|
public abstract String commandName
Copyright © 2010-2014. All Rights Reserved.