Class LogBackedSagaService
java.lang.Object
org.j7m.middleware.saga.LogBackedSagaService
- All Implemented Interfaces:
AutoCloseable, org.j7m.middleware.api.saga.SagaService
public final class LogBackedSagaService
extends Object
implements org.j7m.middleware.api.saga.SagaService
Durable-log-backed local saga service.
-
Constructor Summary
ConstructorsConstructorDescriptionLogBackedSagaService(SagaConfig config) Opens and recovers the saga service. -
Method Summary
Modifier and TypeMethodDescriptionorg.j7m.middleware.api.saga.SagaCancelResultcancel(org.j7m.middleware.api.saga.SagaCancelRequest request) voidclose()voidorg.j7m.middleware.api.saga.SagaExecutionexecution(org.j7m.middleware.api.saga.SagaExecutionId executionId) voidregister(org.j7m.middleware.api.saga.SagaDefinition definition) org.j7m.middleware.api.saga.SagaExecutionrunUntilIdle(org.j7m.middleware.api.saga.SagaExecutionId executionId) org.j7m.middleware.api.saga.SagaStartResultstart(org.j7m.middleware.api.saga.SagaStartRequest request) org.j7m.middleware.api.saga.SagaStatusstatus()
-
Constructor Details
-
LogBackedSagaService
Opens and recovers the saga service.- Parameters:
config- validated service configuration
-
-
Method Details
-
register
public void register(org.j7m.middleware.api.saga.SagaDefinition definition) - Specified by:
registerin interfaceorg.j7m.middleware.api.saga.SagaService
-
start
public org.j7m.middleware.api.saga.SagaStartResult start(org.j7m.middleware.api.saga.SagaStartRequest request) - Specified by:
startin interfaceorg.j7m.middleware.api.saga.SagaService
-
runUntilIdle
public org.j7m.middleware.api.saga.SagaExecution runUntilIdle(org.j7m.middleware.api.saga.SagaExecutionId executionId) - Specified by:
runUntilIdlein interfaceorg.j7m.middleware.api.saga.SagaService
-
cancel
public org.j7m.middleware.api.saga.SagaCancelResult cancel(org.j7m.middleware.api.saga.SagaCancelRequest request) - Specified by:
cancelin interfaceorg.j7m.middleware.api.saga.SagaService
-
evaluateTimeouts
public void evaluateTimeouts()- Specified by:
evaluateTimeoutsin interfaceorg.j7m.middleware.api.saga.SagaService
-
status
public org.j7m.middleware.api.saga.SagaStatus status()- Specified by:
statusin interfaceorg.j7m.middleware.api.saga.SagaService
-
execution
public org.j7m.middleware.api.saga.SagaExecution execution(org.j7m.middleware.api.saga.SagaExecutionId executionId) - Specified by:
executionin interfaceorg.j7m.middleware.api.saga.SagaService
-
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceorg.j7m.middleware.api.saga.SagaService
-