@AppliesTo(value=UnitOfWorkPropagation.class) public class UnitOfWorkConcern extends GenericConcern
UnitOfWorkConcern
manages the unit of work complete, discard and retry policy.UnitOfWorkPropagation
,
UnitOfWorkDiscardOn
Constructor and Description |
---|
UnitOfWorkConcern() |
Modifier and Type | Method and Description |
---|---|
protected void |
discardIfRequired(Method aMethod,
UnitOfWork aUnitOfWork,
Throwable aThrowable)
Discard unit of work if the discard policy match.
|
Object |
invoke(Object proxy,
Method method,
Object[] args)
Handles method with
UnitOfWorkPropagation annotation. |
protected Object |
invokeWithCommit(Object proxy,
Method method,
Object[] args,
UnitOfWork currentUnitOfWork) |
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
UnitOfWorkPropagation
annotation.proxy
- The object.method
- The invoked method.args
- The method arguments.Throwable
- Thrown if the method invocation throw exception.protected Object invokeWithCommit(Object proxy, Method method, Object[] args, UnitOfWork currentUnitOfWork) throws Throwable
Throwable
protected void discardIfRequired(Method aMethod, UnitOfWork aUnitOfWork, Throwable aThrowable)
aMethod
- The invoked method. This argument must not be null
.aUnitOfWork
- The current unit of work. This argument must not be null
.aThrowable
- The exception thrown. This argument must not be null
.