Class JpaCustomizedSideEffectRepository<D extends JpaSideEffect,E extends JpaWorkflow>

java.lang.Object
com.broadleafcommerce.workflow.provider.jpa.repository.JpaCustomizedSideEffectRepository<D,E>
Type Parameters:
D - The possibly extended type of JpaSideEffect
E - The possibly extended type of JpaWorkflow
All Implemented Interfaces:
com.broadleafcommerce.orchestration.internal.SideEffectHandler, CustomizedSideEffectRepository<D>

public class JpaCustomizedSideEffectRepository<D extends JpaSideEffect,E extends JpaWorkflow> extends Object implements CustomizedSideEffectRepository<D>, com.broadleafcommerce.orchestration.internal.SideEffectHandler
See CustomizedSideEffectRepository and SideEffectHandler.
  • Constructor Details

    • JpaCustomizedSideEffectRepository

      public JpaCustomizedSideEffectRepository(com.fasterxml.jackson.databind.ObjectMapper objectMapper, com.broadleafcommerce.common.extension.TypeFactory typeFactory, ExecutionProperties executionProperties, com.broadleafcommerce.data.tracking.core.BasicAuditUtility auditUtility)
  • Method Details

    • activityBoundary

      @Policy(operationTypes=UPDATE) public void activityBoundary(String name, boolean isEnd)
      Specified by:
      activityBoundary in interface com.broadleafcommerce.orchestration.internal.SideEffectHandler
    • activityBoundary

      @Policy(operationTypes=UPDATE) public void activityBoundary(String name, Duration duration, boolean isEnd)
      Specified by:
      activityBoundary in interface com.broadleafcommerce.orchestration.internal.SideEffectHandler
    • addSideEffect

      @Policy(operationTypes=UPDATE) public <R> R addSideEffect(Class<?> resultClass, com.broadleafcommerce.orchestration.workflow.Functions.Func<R> func, @Nullable Object activity)
      Specified by:
      addSideEffect in interface com.broadleafcommerce.orchestration.internal.SideEffectHandler
    • applyRecent

      @Policy(operationTypes=UPDATE) public void applyRecent()
      Specified by:
      applyRecent in interface com.broadleafcommerce.orchestration.internal.SideEffectHandler
    • flush

      @Policy(operationTypes=UPDATE) public void flush()
      Specified by:
      flush in interface com.broadleafcommerce.orchestration.internal.SideEffectHandler
    • addSignal

      @Policy(operationTypes=UPDATE) public D addSignal(String workflowId, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo, Method signalMethod, Object... args)
      Description copied from interface: CustomizedSideEffectRepository
      Add a Signal as a side effect.
      Specified by:
      addSignal in interface CustomizedSideEffectRepository<D extends JpaSideEffect>
      Parameters:
      workflowId - The primary key for the workflow execution
      contextInfo - Data Tracking context information
      signalMethod - The method name to call on SimpleWorkflow
      args - The method arguments
      Returns:
      The resulting, persisted side effect
    • addItem

      @NotNull protected D addItem(String workflowId, @Nullable String tenantId, Object object, Class<?> resultClass)
    • setRepository

      @Autowired @Lazy public void setRepository(JpaSideEffectRepository<D> repository)
    • setWorkflowRepository

      @Autowired @Lazy public void setWorkflowRepository(JpaWorkflowRepository<E> workflowRepository)