Package org.axonframework.modelling.saga
Annotation Interface StartSaga
@Deprecated(since="5.4.0",
forRemoval=true)
@Documented
@Retention(RUNTIME)
@Target({METHOD,ANNOTATION_TYPE})
@HasHandlerAttributes
public @interface StartSaga
Deprecated, for removal: This API element is subject to removal in a future version.
Indicates that the annotated
will always trigger the creation of a saga that can be found with an AssociationValue with key "orderId" and as value the value returned by
SagaEventHandler method can trigger the creation of a new Saga instance.
When a Saga is started due to an invocation on a StartSaga annotated method, the association of the annotated method
and the actual property's value are used to define a AssociationValue for the created saga. Thus, a method with this
definition:
@StartSaga(forceNew=true)
@SagaEventHandler(associationProperty="orderId")
public void
handleOrderCreated(OrderCreatedEvent event) will always trigger the creation of a saga that can be found with an AssociationValue with key "orderId" and as value the value returned by
event.getOrderId().
This annotation can only appear on methods that have been annotated with @SagaEventHandler.- Since:
- 0.7
- Author:
- Allard Buijze
-
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionbooleanDeprecated, for removal: This API element is subject to removal in a future version.Indicates whether or not to force creation of a Saga, even if one already exists.
-
Element Details
-
forceNew
boolean forceNewDeprecated, for removal: This API element is subject to removal in a future version.Indicates whether or not to force creation of a Saga, even if one already exists. Iftrue, a new Saga is always created when an event assignable to the annotated method is handled. Iffalse, a new saga is only created if no Saga's exist that can handle the incoming event. This annotation can only appear on methods that have been annotated with@SagaEventHandler.- Default:
false
-
axon-legacymodule exists to let already-running Axon Framework 4 Sagas drain out, not to start new ones. Model new business processes as a Workflow or a Stateful Event Handler instead. This annotation remains functional so already-running sagas keep starting related saga instances correctly, but declaring it on new saga types is discouraged.