Class PersistentWorkflow<E extends java.io.Serializable>

  • Type Parameters:
    E - type of data object holt by the workflow (Passed in when calling ProcessingEngine.run(java.lang.String, java.lang.Object)
    All Implemented Interfaces:
    java.io.Serializable, SavepointAware

    public abstract class PersistentWorkflow<E extends java.io.Serializable>
    extends Workflow<E>
    implements java.io.Serializable, SavepointAware
    Abstract base class for persistent workflows. It is safe to run a PersistentWorkflow in a transient engine. So if your want to keep it open to decide later whether your workflow needs persistence or not, it is OK to inherit from PersistentWorkflow.
    See Also:
    Serialized Form
    • Constructor Detail

      • PersistentWorkflow

        public PersistentWorkflow()
    • Method Detail

      • setDataAsObject

        public void setDataAsObject​(java.lang.Object data)
        Used internally
        Parameters:
        data - Just hard cast data to (E). On internal call, we know that data is of correct type, even when handling as object.
      • createCheckpointAcknowledge

        protected Acknowledge createCheckpointAcknowledge()
        Description copied from class: Workflow
        We create a quasi empty acknowledge here. It doesn't block at all and has empty callbacks for success and errors.
        Overrides:
        createCheckpointAcknowledge in class Workflow<E extends java.io.Serializable>
        Returns:
        a BestEffortAcknowledge
      • flushCheckpointAcknowledges

        public boolean flushCheckpointAcknowledges()
      • getErrorData

        public ErrorData getErrorData()