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

    Constructors
    Constructor
    Description
    Opens and recovers the saga service.
  • Method Summary

    Modifier and Type
    Method
    Description
    org.j7m.middleware.api.saga.SagaCancelResult
    cancel(org.j7m.middleware.api.saga.SagaCancelRequest request)
    void
    void
    org.j7m.middleware.api.saga.SagaExecution
    execution(org.j7m.middleware.api.saga.SagaExecutionId executionId)
    void
    register(org.j7m.middleware.api.saga.SagaDefinition definition)
    org.j7m.middleware.api.saga.SagaExecution
    runUntilIdle(org.j7m.middleware.api.saga.SagaExecutionId executionId)
    org.j7m.middleware.api.saga.SagaStartResult
    start(org.j7m.middleware.api.saga.SagaStartRequest request)
    org.j7m.middleware.api.saga.SagaStatus

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • LogBackedSagaService

      public LogBackedSagaService(SagaConfig config)
      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:
      register in interface org.j7m.middleware.api.saga.SagaService
    • start

      public org.j7m.middleware.api.saga.SagaStartResult start(org.j7m.middleware.api.saga.SagaStartRequest request)
      Specified by:
      start in interface org.j7m.middleware.api.saga.SagaService
    • runUntilIdle

      public org.j7m.middleware.api.saga.SagaExecution runUntilIdle(org.j7m.middleware.api.saga.SagaExecutionId executionId)
      Specified by:
      runUntilIdle in interface org.j7m.middleware.api.saga.SagaService
    • cancel

      public org.j7m.middleware.api.saga.SagaCancelResult cancel(org.j7m.middleware.api.saga.SagaCancelRequest request)
      Specified by:
      cancel in interface org.j7m.middleware.api.saga.SagaService
    • evaluateTimeouts

      public void evaluateTimeouts()
      Specified by:
      evaluateTimeouts in interface org.j7m.middleware.api.saga.SagaService
    • status

      public org.j7m.middleware.api.saga.SagaStatus status()
      Specified by:
      status in interface org.j7m.middleware.api.saga.SagaService
    • execution

      public org.j7m.middleware.api.saga.SagaExecution execution(org.j7m.middleware.api.saga.SagaExecutionId executionId)
      Specified by:
      execution in interface org.j7m.middleware.api.saga.SagaService
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface org.j7m.middleware.api.saga.SagaService