Package io.automatiko.engine.api.uow
Interface UnitOfWork
-
public interface UnitOfWorkUnit of Work allows to group related activities and operation into single unit. It it can be then completed or aborted as one making the execution consistent. Depending on the implementation it can rely on some additional frameworks or capabilities to carry on with the execution semantics.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description voidabort()Aborts this unit of work and ignores any awaiting work.voidend()Completes this unit of work ensuring all awaiting work is invoked.voidintercept(WorkUnit<?> work)Intercepts work that should be done as part of this unit of work.default ProcessInstances<?>managedProcessInstances(Process<?> process, ProcessInstances<?> instances)Allows to manage given implementation of process instances to provide up to date information for executed instances within unit of workvoidstart()Initiates this unit of work if not already started.
-
-
-
Method Detail
-
start
void start()
Initiates this unit of work if not already started. It is safe to call start multiple times unless the unit has already been completed or aborted.
-
end
void end()
Completes this unit of work ensuring all awaiting work is invoked.
-
abort
void abort()
Aborts this unit of work and ignores any awaiting work.
-
intercept
void intercept(WorkUnit<?> work)
Intercepts work that should be done as part of this unit of work.- Parameters:
work- actual work to be invoked as part of this unit of work.
-
managedProcessInstances
default ProcessInstances<?> managedProcessInstances(Process<?> process, ProcessInstances<?> instances)
Allows to manage given implementation of process instances to provide up to date information for executed instances within unit of work- Parameters:
process- definition of the processinstances- concrete implementation of theProcessInstances- Returns:
- returns managed instance of the given ProcessInstances instance
-
-