org.axonframework.eventhandling.async
Interface SequencingPolicy<T>
- Type Parameters:
T
- The type of object representing the processing instruction for the event.
- All Known Implementing Classes:
- FullConcurrencyPolicy, SequentialPerAggregatePolicy, SequentialPolicy
public interface SequencingPolicy<T>
Interface to a policy definition for concurrent processing, for example event handling.
Some implementations are provided by default:
SequentialPolicy
: Default policy. Requires that all
tasks are handled in the order they arrive at the processor. This also means that at most 1 thread is processing
tasks for this processor at any time.
FullConcurrencyPolicy
: Allows each tasks to be handled independently of any other tasks. Tasks
processing will typically start in the same order the tasks were scheduled in, although no guarantees can be given
about the actual processing order.
SequentialPerAggregatePolicy
: Will force events (only supports Event Handling tasks) generated by the
same aggregate to be handled sequentially. At most one thread will be processing events of a single aggregate at any
time
- Since:
- 0.3
- Author:
- Allard Buijze
getSequenceIdentifierFor
Object getSequenceIdentifierFor(T event)
- Returns the sequence identifier for the given
event
. When two events have the same identifier (as
defined by their equals method), they will be executed sequentially. A null
value indicates that
there are no sequencing requirements for the handling of this event.
- Parameters:
event
- the event for which to get the sequencing identifier
- Returns:
- a sequence identifier for the given event
Copyright © 2010-2016. All Rights Reserved.