refactor: split public types into definition, runtime, and spi packages

Keep Maven modules unchanged. Hosts import models and SPIs from the new packages; OrdoEngine stays at com.jetlumen.ordo.api.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
0264408
2026-09-20 11:18:10 +08:00
co-authored by Cursor
parent d743939964
commit f0ddaf7694
99 changed files with 365 additions and 304 deletions
@@ -1,9 +1,15 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api;
import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.query.InstanceQuery; import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.query.TaskQuery; import com.jetlumen.ordo.api.query.TaskQuery;
import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.runtime.ProcessInstance;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
@@ -1,4 +1,6 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import com.jetlumen.ordo.api.runtime.TaskStatus;
/** /**
* Decision rule applied when an approval step has more than one candidate. * Decision rule applied when an approval step has more than one candidate.
@@ -1,9 +1,11 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import java.util.Set; import java.util.Set;
import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.util.Texts;
/** /**
* A named step in a process definition. Approval steps have one or more candidate assignees; * A named step in a process definition. Approval steps have one or more candidate assignees;
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
/** What happens when an approval step's due time is reached. */ /** What happens when an approval step's due time is reached. */
public enum DueThen { public enum DueThen {
@@ -1,8 +1,9 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import java.util.HashSet; import java.util.HashSet;
import java.util.List; import java.util.List;
import java.util.Set; import java.util.Set;
import com.jetlumen.ordo.api.util.Texts;
/** One branch inside a {@link StepKind#PARALLEL} block. The first step id is the branch start. */ /** One branch inside a {@link StepKind#PARALLEL} block. The first step id is the branch start. */
public record ParallelBranch(String id, List<String> stepIds) { public record ParallelBranch(String id, List<String> stepIds) {
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
/** Locates an inner step inside a {@link StepKind#PARALLEL} block. */ /** Locates an inner step inside a {@link StepKind#PARALLEL} block. */
public record ParallelMembership(ApprovalStep parallel, ParallelBranch branch) { public record ParallelMembership(ApprovalStep parallel, ParallelBranch branch) {
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator; import java.util.Comparator;
@@ -9,6 +9,7 @@ import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.Optional; import java.util.Optional;
import java.util.Set; import java.util.Set;
import com.jetlumen.ordo.api.util.Texts;
/** Immutable blueprint for an approval process with explicit step transitions. */ /** Immutable blueprint for an approval process with explicit step transitions. */
public record ProcessDefinition(String id, int version, String name, List<ApprovalStep> steps, public record ProcessDefinition(String id, int version, String name, List<ApprovalStep> steps,
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
@@ -15,6 +15,7 @@ import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Objects; import java.util.Objects;
import java.util.Set; import java.util.Set;
import com.jetlumen.ordo.api.util.Jsons;
/** Parses a structural JSON process graph into a {@link ProcessDefinition}. */ /** Parses a structural JSON process graph into a {@link ProcessDefinition}. */
public final class ProcessDefinitionParser { public final class ProcessDefinitionParser {
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import com.fasterxml.jackson.databind.JsonNode; import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.ArrayNode; import com.fasterxml.jackson.databind.node.ArrayNode;
@@ -11,6 +11,8 @@ import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.util.Texts;
/** Closed-set boolean tree evaluated against {@link ProcessContext} variables. */ /** Closed-set boolean tree evaluated against {@link ProcessContext} variables. */
public sealed interface RoutingPredicate permits RoutingPredicate.Compare, RoutingPredicate.In, public sealed interface RoutingPredicate permits RoutingPredicate.Compare, RoutingPredicate.In,
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
@@ -9,6 +9,9 @@ import com.fasterxml.jackson.databind.node.ObjectNode;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.util.Jsons;
import com.jetlumen.ordo.api.util.Texts;
/** /**
* Outgoing-edge condition: either a built-in {@link RoutingPredicate} or a host * Outgoing-edge condition: either a built-in {@link RoutingPredicate} or a host
@@ -1,7 +1,8 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import java.time.Duration; import java.time.Duration;
import java.util.Objects; import java.util.Objects;
import com.jetlumen.ordo.api.util.Texts;
/** Relative SLA on an approval step. */ /** Relative SLA on an approval step. */
public record StepDue(Duration after, DueThen then, String to, String action) { public record StepDue(Duration after, DueThen then, String to, String action) {
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
public enum StepKind { public enum StepKind {
APPROVAL, ACTION, PARALLEL APPROVAL, ACTION, PARALLEL
@@ -1,4 +1,6 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.definition;
import com.jetlumen.ordo.api.util.Texts;
/** /**
* An outgoing edge from an approval step. When {@link #toStepId()} is {@code null}, matching this * An outgoing edge from an approval step. When {@link #toStepId()} is {@code null}, matching this
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.api.query; package com.jetlumen.ordo.api.query;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import java.time.Instant; import java.time.Instant;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.api.query; package com.jetlumen.ordo.api.query;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import java.time.Instant; import java.time.Instant;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.api.repository; package com.jetlumen.ordo.api.repository;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ActionExecutionStatus; import com.jetlumen.ordo.api.runtime.ActionExecutionStatus;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.api.repository; package com.jetlumen.ordo.api.repository;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.query.TaskQuery; import com.jetlumen.ordo.api.query.TaskQuery;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.api.repository; package com.jetlumen.ordo.api.repository;
import com.jetlumen.ordo.api.InstanceToken; import com.jetlumen.ordo.api.runtime.InstanceToken;
import java.util.List; import java.util.List;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.api.repository; package com.jetlumen.ordo.api.repository;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.api.repository; package com.jetlumen.ordo.api.repository;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.api.repository; package com.jetlumen.ordo.api.repository;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.query.InstanceQuery; import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
@@ -1,7 +1,8 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
import java.time.Instant; import java.time.Instant;
import java.util.Objects; import java.util.Objects;
import com.jetlumen.ordo.api.util.Texts;
/** Persisted record of an ACTION step invocation. */ /** Persisted record of an ACTION step invocation. */
public record ActionExecution(String id, String instanceId, String stepId, String actionKey, public record ActionExecution(String id, String instanceId, String stepId, String actionKey,
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
/** Lifecycle of a persisted ACTION-step execution. */ /** Lifecycle of a persisted ACTION-step execution. */
public enum ActionExecutionStatus { public enum ActionExecutionStatus {
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
import java.time.Instant; import java.time.Instant;
@@ -1,6 +1,8 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
import java.util.Objects; import java.util.Objects;
import com.jetlumen.ordo.api.definition.StepKind;
import com.jetlumen.ordo.api.util.Texts;
/** Runtime token for one branch of a {@link StepKind#PARALLEL} block. */ /** Runtime token for one branch of a {@link StepKind#PARALLEL} block. */
public record InstanceToken(String id, String instanceId, String parallelStepId, String branchId, String currentStepId, public record InstanceToken(String id, String instanceId, String parallelStepId, String branchId, String currentStepId,
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
@@ -1,7 +1,8 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
import java.time.Instant; import java.time.Instant;
import java.util.Objects; import java.util.Objects;
import com.jetlumen.ordo.api.util.Texts;
/** Immutable audit record of something that happened to a process instance. */ /** Immutable audit record of something that happened to a process instance. */
public record ProcessEvent(String id, String instanceId, String taskId, String stepId, ProcessEventType type, public record ProcessEvent(String id, String instanceId, String taskId, String stepId, ProcessEventType type,
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
/** Kinds of append-only process history events. */ /** Kinds of append-only process history events. */
public enum ProcessEventType { public enum ProcessEventType {
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
import java.time.Instant; import java.time.Instant;
@@ -1,6 +1,7 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
import java.util.Objects; import java.util.Objects;
import com.jetlumen.ordo.api.util.Texts;
/** /**
* Read-only engine metadata plus business {@link ProcessContext} for host SPIs. * Read-only engine metadata plus business {@link ProcessContext} for host SPIs.
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
public enum ProcessStatus { public enum ProcessStatus {
RUNNING, APPROVED, REJECTED, WITHDRAWN, CANCELLED RUNNING, APPROVED, REJECTED, WITHDRAWN, CANCELLED
@@ -1,7 +1,8 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
import java.time.Instant; import java.time.Instant;
import java.util.Objects; import java.util.Objects;
import com.jetlumen.ordo.api.util.Texts;
/** Immutable audit record created when an approval task is completed. */ /** Immutable audit record created when an approval task is completed. */
public record TaskAction(String actor, String comment, Instant operatedAt) { public record TaskAction(String actor, String comment, Instant operatedAt) {
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
public enum TaskStatus { public enum TaskStatus {
PENDING, APPROVED, REJECTED, PENDING, APPROVED, REJECTED,
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.runtime;
/** Status of a parallel-branch token. */ /** Status of a parallel-branch token. */
public enum TokenStatus { public enum TokenStatus {
@@ -1,4 +1,6 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.spi;
import com.jetlumen.ordo.api.runtime.ProcessRuntime;
/** /**
* Executes a named action step against the running instance. Hosts supply a * Executes a named action step against the running instance. Hosts supply a
@@ -1,4 +1,7 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.spi;
import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.runtime.ProcessRuntime;
/** /**
* Resolves the actual assignee for a single candidate of an approval step when its task is * Resolves the actual assignee for a single candidate of an approval step when its task is
@@ -1,6 +1,7 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.spi;
import java.util.List; import java.util.List;
import com.jetlumen.ordo.api.runtime.ProcessRuntime;
/** /**
* A single ACTION implementation keyed by {@link #key()}, matching {@code action} on the step * A single ACTION implementation keyed by {@link #key()}, matching {@code action} on the step
@@ -1,7 +1,8 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.spi;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import com.jetlumen.ordo.api.runtime.ProcessRuntime;
/** /**
* A single routing condition keyed by {@link #key()}, matching {@code when.ref}. Spring collects * A single routing condition keyed by {@link #key()}, matching {@code when.ref}. Spring collects
@@ -1,9 +1,10 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.spi;
import java.util.List; import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.Objects; import java.util.Objects;
import java.util.Set; import java.util.Set;
import com.jetlumen.ordo.api.util.Texts;
/** Host-registered keys for designers and REST dropdowns; not used by the engine at runtime. */ /** Host-registered keys for designers and REST dropdowns; not used by the engine at runtime. */
public interface OrdoCatalog { public interface OrdoCatalog {
@@ -1,4 +1,6 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.spi;
import com.jetlumen.ordo.api.runtime.ProcessEvent;
/** /**
* Host hook invoked after a process mutation has been committed. Implementations must not throw * Host hook invoked after a process mutation has been committed. Implementations must not throw
@@ -1,6 +1,7 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.spi;
import java.util.Map; import java.util.Map;
import com.jetlumen.ordo.api.runtime.ProcessRuntime;
/** /**
* Evaluates a named routing condition ({@code when.ref}) against the running instance. * Evaluates a named routing condition ({@code when.ref}) against the running instance.
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.util;
import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.api; package com.jetlumen.ordo.api.util;
/** Shared blank-string checks used by domain records and the engine. */ /** Shared blank-string checks used by domain records and the engine. */
public final class Texts { public final class Texts {
@@ -8,6 +8,13 @@ import java.util.List;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertThrows;
import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertTrue;
import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.definition.ProcessDefinitionParser;
import com.jetlumen.ordo.api.definition.RoutingPredicate;
import com.jetlumen.ordo.api.definition.StepDue;
import com.jetlumen.ordo.api.definition.StepKind;
import com.jetlumen.ordo.api.definition.StepTransition;
class ProcessDefinitionParserTest { class ProcessDefinitionParserTest {
@@ -7,6 +7,14 @@ import java.util.List;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertThrows;
import com.jetlumen.ordo.api.definition.ApprovalPolicy;
import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.definition.ParallelBranch;
import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.definition.RoutingWhen;
import com.jetlumen.ordo.api.definition.StepDue;
import com.jetlumen.ordo.api.definition.StepKind;
import com.jetlumen.ordo.api.definition.StepTransition;
class ProcessDefinitionTest { class ProcessDefinitionTest {
@@ -5,6 +5,7 @@ import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertInstanceOf; import static org.junit.jupiter.api.Assertions.assertInstanceOf;
import static org.junit.jupiter.api.Assertions.assertThrows; import static org.junit.jupiter.api.Assertions.assertThrows;
import com.jetlumen.ordo.api.definition.RoutingWhen;
class RoutingWhenTest { class RoutingWhenTest {
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.api.query; package com.jetlumen.ordo.api.query;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import java.time.Instant; import java.time.Instant;
@@ -1,28 +1,28 @@
package com.jetlumen.ordo.core; package com.jetlumen.ordo.core;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ActionExecutionStatus; import com.jetlumen.ordo.api.runtime.ActionExecutionStatus;
import com.jetlumen.ordo.api.ActionHandler; import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.ApprovalPolicy; import com.jetlumen.ordo.api.definition.ApprovalPolicy;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.AssigneeResolver; import com.jetlumen.ordo.api.spi.AssigneeResolver;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.OrdoEventListener; import com.jetlumen.ordo.api.spi.OrdoEventListener;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.ProcessRuntime; import com.jetlumen.ordo.api.runtime.ProcessRuntime;
import com.jetlumen.ordo.api.ProcessEventType; import com.jetlumen.ordo.api.runtime.ProcessEventType;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.RoutingWhen; import com.jetlumen.ordo.api.definition.RoutingWhen;
import com.jetlumen.ordo.api.StepDue; import com.jetlumen.ordo.api.definition.StepDue;
import com.jetlumen.ordo.api.StepKind; import com.jetlumen.ordo.api.definition.StepKind;
import com.jetlumen.ordo.api.StepTransition; import com.jetlumen.ordo.api.definition.StepTransition;
import com.jetlumen.ordo.api.TaskAction; import com.jetlumen.ordo.api.runtime.TaskAction;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.api.TransactionExecutor; import com.jetlumen.ordo.api.TransactionExecutor;
import com.jetlumen.ordo.api.exception.DefinitionNotFoundException; import com.jetlumen.ordo.api.exception.DefinitionNotFoundException;
import com.jetlumen.ordo.api.exception.InstanceAlreadyCompletedException; import com.jetlumen.ordo.api.exception.InstanceAlreadyCompletedException;
@@ -36,10 +36,10 @@ import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.query.TaskQuery; import com.jetlumen.ordo.api.query.TaskQuery;
import com.jetlumen.ordo.api.InstanceToken; import com.jetlumen.ordo.api.runtime.InstanceToken;
import com.jetlumen.ordo.api.ParallelBranch; import com.jetlumen.ordo.api.definition.ParallelBranch;
import com.jetlumen.ordo.api.ParallelMembership; import com.jetlumen.ordo.api.definition.ParallelMembership;
import com.jetlumen.ordo.api.TokenStatus; import com.jetlumen.ordo.api.runtime.TokenStatus;
import com.jetlumen.ordo.api.repository.ActionExecutionRepository; import com.jetlumen.ordo.api.repository.ActionExecutionRepository;
import com.jetlumen.ordo.api.repository.ApprovalTaskRepository; import com.jetlumen.ordo.api.repository.ApprovalTaskRepository;
import com.jetlumen.ordo.api.repository.InstanceTokenRepository; import com.jetlumen.ordo.api.repository.InstanceTokenRepository;
@@ -59,7 +59,9 @@ import java.util.Optional;
import java.util.UUID; import java.util.UUID;
import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicLong;
import static com.jetlumen.ordo.api.Texts.requireText; import static com.jetlumen.ordo.api.util.Texts.requireText;
import com.jetlumen.ordo.core.routing.RoutingPredicateEvaluator;
/** /**
* Repository-backed implementation of the approval runtime with explicit step transitions. * Repository-backed implementation of the approval runtime with explicit step transitions.
@@ -1,16 +1,16 @@
package com.jetlumen.ordo.core; package com.jetlumen.ordo.core;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ActionHandler; import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.AssigneeResolver; import com.jetlumen.ordo.api.spi.AssigneeResolver;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.OrdoEventListener; import com.jetlumen.ordo.api.spi.OrdoEventListener;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.query.InstanceQuery; import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ActionExecutionStatus; import com.jetlumen.ordo.api.runtime.ActionExecutionStatus;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.repository.ActionExecutionRepository; import com.jetlumen.ordo.api.repository.ActionExecutionRepository;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.query.TaskQuery; import com.jetlumen.ordo.api.query.TaskQuery;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.InstanceToken; import com.jetlumen.ordo.api.runtime.InstanceToken;
import com.jetlumen.ordo.api.TokenStatus; import com.jetlumen.ordo.api.runtime.TokenStatus;
import com.jetlumen.ordo.api.repository.InstanceTokenRepository; import com.jetlumen.ordo.api.repository.InstanceTokenRepository;
import java.util.ArrayList; import java.util.ArrayList;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.repository.ProcessDefinitionRepository; import com.jetlumen.ordo.api.repository.ProcessDefinitionRepository;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.repository.ProcessHistoryRepository; import com.jetlumen.ordo.api.repository.ProcessHistoryRepository;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.query.InstanceQuery; import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
@@ -1,13 +1,13 @@
package com.jetlumen.ordo.core; package com.jetlumen.ordo.core.routing;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.RoutingPredicate; import com.jetlumen.ordo.api.definition.RoutingPredicate;
import com.jetlumen.ordo.api.RoutingPredicate.And; import com.jetlumen.ordo.api.definition.RoutingPredicate.And;
import com.jetlumen.ordo.api.RoutingPredicate.Compare; import com.jetlumen.ordo.api.definition.RoutingPredicate.Compare;
import com.jetlumen.ordo.api.RoutingPredicate.In; import com.jetlumen.ordo.api.definition.RoutingPredicate.In;
import com.jetlumen.ordo.api.RoutingPredicate.Not; import com.jetlumen.ordo.api.definition.RoutingPredicate.Not;
import com.jetlumen.ordo.api.RoutingPredicate.Op; import com.jetlumen.ordo.api.definition.RoutingPredicate.Op;
import com.jetlumen.ordo.api.RoutingPredicate.Or; import com.jetlumen.ordo.api.definition.RoutingPredicate.Or;
import java.util.Map; import java.util.Map;
import java.util.Objects; import java.util.Objects;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.core.spi; package com.jetlumen.ordo.core.spi;
import com.jetlumen.ordo.api.ActionHandler; import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.NamedAction; import com.jetlumen.ordo.api.spi.NamedAction;
import com.jetlumen.ordo.api.ProcessRuntime; import com.jetlumen.ordo.api.runtime.ProcessRuntime;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.core.spi; package com.jetlumen.ordo.core.spi;
import com.jetlumen.ordo.api.NamedCondition; import com.jetlumen.ordo.api.spi.NamedCondition;
import com.jetlumen.ordo.api.ProcessRuntime; import com.jetlumen.ordo.api.runtime.ProcessRuntime;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.core.spi; package com.jetlumen.ordo.core.spi;
import com.jetlumen.ordo.api.Texts; import com.jetlumen.ordo.api.util.Texts;
import java.util.LinkedHashMap; import java.util.LinkedHashMap;
import java.util.List; import java.util.List;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.core.spi; package com.jetlumen.ordo.core.spi;
import com.jetlumen.ordo.api.NamedAction; import com.jetlumen.ordo.api.spi.NamedAction;
import com.jetlumen.ordo.api.NamedCondition; import com.jetlumen.ordo.api.spi.NamedCondition;
import com.jetlumen.ordo.api.OrdoCatalog; import com.jetlumen.ordo.api.spi.OrdoCatalog;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
@@ -1,25 +1,25 @@
package com.jetlumen.ordo.core; package com.jetlumen.ordo.core;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ActionExecutionStatus; import com.jetlumen.ordo.api.runtime.ActionExecutionStatus;
import com.jetlumen.ordo.api.AssigneeResolver; import com.jetlumen.ordo.api.spi.AssigneeResolver;
import com.jetlumen.ordo.api.ApprovalPolicy; import com.jetlumen.ordo.api.definition.ApprovalPolicy;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.ParallelBranch; import com.jetlumen.ordo.api.definition.ParallelBranch;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.ProcessEventType; import com.jetlumen.ordo.api.runtime.ProcessEventType;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessRuntime; import com.jetlumen.ordo.api.runtime.ProcessRuntime;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.RoutingPredicate; import com.jetlumen.ordo.api.definition.RoutingPredicate;
import com.jetlumen.ordo.api.StepDue; import com.jetlumen.ordo.api.definition.StepDue;
import com.jetlumen.ordo.api.StepKind; import com.jetlumen.ordo.api.definition.StepKind;
import com.jetlumen.ordo.api.StepTransition; import com.jetlumen.ordo.api.definition.StepTransition;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.api.exception.DefinitionNotFoundException; import com.jetlumen.ordo.api.exception.DefinitionNotFoundException;
import com.jetlumen.ordo.api.exception.InstanceAlreadyCompletedException; import com.jetlumen.ordo.api.exception.InstanceAlreadyCompletedException;
import com.jetlumen.ordo.api.exception.InstanceNotFoundException; import com.jetlumen.ordo.api.exception.InstanceNotFoundException;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.core; package com.jetlumen.ordo.core;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.RoutingPredicate; import com.jetlumen.ordo.api.definition.RoutingPredicate;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import java.util.List; import java.util.List;
@@ -9,6 +9,7 @@ import java.util.Map;
import static org.junit.jupiter.api.Assertions.assertFalse; import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertTrue;
import com.jetlumen.ordo.core.routing.RoutingPredicateEvaluator;
class RoutingPredicateEvaluatorTest { class RoutingPredicateEvaluatorTest {
@@ -1,10 +1,10 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.query.TaskQuery; import com.jetlumen.ordo.api.query.TaskQuery;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.core.repository; package com.jetlumen.ordo.core.repository;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.query.InstanceQuery; import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
@@ -1,9 +1,9 @@
package com.jetlumen.ordo.core.spi; package com.jetlumen.ordo.core.spi;
import com.jetlumen.ordo.api.NamedAction; import com.jetlumen.ordo.api.spi.NamedAction;
import com.jetlumen.ordo.api.NamedCondition; import com.jetlumen.ordo.api.spi.NamedCondition;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessRuntime; import com.jetlumen.ordo.api.runtime.ProcessRuntime;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
import java.util.ArrayList; import java.util.ArrayList;
@@ -1,9 +1,9 @@
package com.jetlumen.ordo.example; package com.jetlumen.ordo.example;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.core.InMemoryOrdoEngine; import com.jetlumen.ordo.core.InMemoryOrdoEngine;
import java.util.List; import java.util.List;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.spring.jdbc; package com.jetlumen.ordo.spring;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessDefinitionParser; import com.jetlumen.ordo.api.definition.ProcessDefinitionParser;
import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner; import org.springframework.boot.ApplicationRunner;
import org.springframework.core.io.Resource; import org.springframework.core.io.Resource;
@@ -1,4 +1,4 @@
package com.jetlumen.ordo.spring.jdbc; package com.jetlumen.ordo.spring;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import org.springframework.context.SmartLifecycle; import org.springframework.context.SmartLifecycle;
@@ -1,12 +1,12 @@
package com.jetlumen.ordo.spring.jdbc; package com.jetlumen.ordo.spring.jdbc;
import com.jetlumen.ordo.api.ActionHandler; import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.AssigneeResolver; import com.jetlumen.ordo.api.spi.AssigneeResolver;
import com.jetlumen.ordo.api.NamedAction; import com.jetlumen.ordo.api.spi.NamedAction;
import com.jetlumen.ordo.api.NamedCondition; import com.jetlumen.ordo.api.spi.NamedCondition;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.OrdoEventListener; import com.jetlumen.ordo.api.spi.OrdoEventListener;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.TransactionExecutor; import com.jetlumen.ordo.api.TransactionExecutor;
import com.jetlumen.ordo.api.repository.ActionExecutionRepository; import com.jetlumen.ordo.api.repository.ActionExecutionRepository;
import com.jetlumen.ordo.api.repository.ApprovalTaskRepository; import com.jetlumen.ordo.api.repository.ApprovalTaskRepository;
@@ -17,6 +17,8 @@ import com.jetlumen.ordo.api.repository.ProcessInstanceRepository;
import com.jetlumen.ordo.core.DefaultOrdoEngine; import com.jetlumen.ordo.core.DefaultOrdoEngine;
import com.jetlumen.ordo.core.spi.DispatchingActionHandler; import com.jetlumen.ordo.core.spi.DispatchingActionHandler;
import com.jetlumen.ordo.core.spi.DispatchingRoutingCondition; import com.jetlumen.ordo.core.spi.DispatchingRoutingCondition;
import com.jetlumen.ordo.spring.OrdoDefinitionLoader;
import com.jetlumen.ordo.spring.OrdoDuePoller;
import com.jetlumen.ordo.spring.OrdoProperties; import com.jetlumen.ordo.spring.OrdoProperties;
import com.jetlumen.ordo.storage.jdbc.JdbcActionExecutionRepository; import com.jetlumen.ordo.storage.jdbc.JdbcActionExecutionRepository;
import com.jetlumen.ordo.storage.jdbc.JdbcApprovalTaskRepository; import com.jetlumen.ordo.storage.jdbc.JdbcApprovalTaskRepository;
@@ -2,9 +2,9 @@ package com.jetlumen.ordo.spring.rest;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.jetlumen.ordo.api.Jsons; import com.jetlumen.ordo.api.util.Jsons;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessDefinitionParser; import com.jetlumen.ordo.api.definition.ProcessDefinitionParser;
import java.util.Map; import java.util.Map;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.spring.rest; package com.jetlumen.ordo.spring.rest;
import com.jetlumen.ordo.api.OrdoCatalog; import com.jetlumen.ordo.api.spi.OrdoCatalog;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.spring.rest; package com.jetlumen.ordo.spring.rest;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessDefinitionParser; import com.jetlumen.ordo.api.definition.ProcessDefinitionParser;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
@@ -1,12 +1,12 @@
package com.jetlumen.ordo.spring.rest; package com.jetlumen.ordo.spring.rest;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.query.InstanceQuery; import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.spring.rest; package com.jetlumen.ordo.spring.rest;
import com.jetlumen.ordo.api.NamedAction; import com.jetlumen.ordo.api.spi.NamedAction;
import com.jetlumen.ordo.api.NamedCondition; import com.jetlumen.ordo.api.spi.NamedCondition;
import com.jetlumen.ordo.api.OrdoCatalog; import com.jetlumen.ordo.api.spi.OrdoCatalog;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.core.spi.RegistryOrdoCatalog; import com.jetlumen.ordo.core.spi.RegistryOrdoCatalog;
import com.jetlumen.ordo.spring.OrdoProperties; import com.jetlumen.ordo.spring.OrdoProperties;
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.spring.rest; package com.jetlumen.ordo.spring.rest;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.query.TaskQuery; import com.jetlumen.ordo.api.query.TaskQuery;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
@@ -1,20 +1,20 @@
package com.jetlumen.ordo.spring.jdbc; package com.jetlumen.ordo.spring.jdbc;
import com.jetlumen.ordo.api.ActionHandler; import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.AssigneeResolver; import com.jetlumen.ordo.api.spi.AssigneeResolver;
import com.jetlumen.ordo.api.NamedAction; import com.jetlumen.ordo.api.spi.NamedAction;
import com.jetlumen.ordo.api.NamedCondition; import com.jetlumen.ordo.api.spi.NamedCondition;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.OrdoEventListener; import com.jetlumen.ordo.api.spi.OrdoEventListener;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.ProcessEventType; import com.jetlumen.ordo.api.runtime.ProcessEventType;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessRuntime; import com.jetlumen.ordo.api.runtime.ProcessRuntime;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.StepTransition; import com.jetlumen.ordo.api.definition.StepTransition;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.repository.ProcessDefinitionRepository; import com.jetlumen.ordo.api.repository.ProcessDefinitionRepository;
import com.jetlumen.ordo.core.spi.DispatchingActionHandler; import com.jetlumen.ordo.core.spi.DispatchingActionHandler;
@@ -34,6 +34,7 @@ import java.util.UUID;
import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy; import static org.assertj.core.api.Assertions.assertThatThrownBy;
import com.jetlumen.ordo.spring.OrdoDefinitionLoader;
class OrdoJdbcAutoConfigurationTest { class OrdoJdbcAutoConfigurationTest {
@@ -1,10 +1,10 @@
package com.jetlumen.ordo.spring.rest; package com.jetlumen.ordo.spring.rest;
import com.jetlumen.ordo.api.NamedAction; import com.jetlumen.ordo.api.spi.NamedAction;
import com.jetlumen.ordo.api.NamedCondition; import com.jetlumen.ordo.api.spi.NamedCondition;
import com.jetlumen.ordo.api.OrdoCatalog; import com.jetlumen.ordo.api.spi.OrdoCatalog;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.ProcessRuntime; import com.jetlumen.ordo.api.runtime.ProcessRuntime;
import com.jetlumen.ordo.spring.jdbc.OrdoFlywayAutoConfiguration; import com.jetlumen.ordo.spring.jdbc.OrdoFlywayAutoConfiguration;
import com.jetlumen.ordo.spring.jdbc.OrdoJdbcAutoConfiguration; import com.jetlumen.ordo.spring.jdbc.OrdoJdbcAutoConfiguration;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ActionExecutionStatus; import com.jetlumen.ordo.api.runtime.ActionExecutionStatus;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.repository.ActionExecutionRepository; import com.jetlumen.ordo.api.repository.ActionExecutionRepository;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.query.TaskQuery; import com.jetlumen.ordo.api.query.TaskQuery;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.InstanceToken; import com.jetlumen.ordo.api.runtime.InstanceToken;
import com.jetlumen.ordo.api.TokenStatus; import com.jetlumen.ordo.api.runtime.TokenStatus;
import com.jetlumen.ordo.api.repository.InstanceTokenRepository; import com.jetlumen.ordo.api.repository.InstanceTokenRepository;
import com.jetlumen.ordo.storage.jdbc.dialect.SqlDialect; import com.jetlumen.ordo.storage.jdbc.dialect.SqlDialect;
import com.jetlumen.ordo.storage.jdbc.dialect.SqlDialects; import com.jetlumen.ordo.storage.jdbc.dialect.SqlDialects;
@@ -1,10 +1,10 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ParallelBranch; import com.jetlumen.ordo.api.definition.ParallelBranch;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.StepKind; import com.jetlumen.ordo.api.definition.StepKind;
import com.jetlumen.ordo.api.StepTransition; import com.jetlumen.ordo.api.definition.StepTransition;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.repository.ProcessDefinitionRepository; import com.jetlumen.ordo.api.repository.ProcessDefinitionRepository;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.repository.ProcessHistoryRepository; import com.jetlumen.ordo.api.repository.ProcessHistoryRepository;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.query.InstanceQuery; import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.storage.jdbc.mapper; package com.jetlumen.ordo.storage.jdbc.mapper;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ActionExecutionStatus; import com.jetlumen.ordo.api.runtime.ActionExecutionStatus;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
@@ -1,18 +1,19 @@
package com.jetlumen.ordo.storage.jdbc.mapper; package com.jetlumen.ordo.storage.jdbc.mapper;
import com.jetlumen.ordo.api.ApprovalPolicy; import com.jetlumen.ordo.api.definition.ApprovalPolicy;
import com.jetlumen.ordo.api.DueThen; import com.jetlumen.ordo.api.definition.DueThen;
import com.jetlumen.ordo.api.StepDue; import com.jetlumen.ordo.api.definition.StepDue;
import com.jetlumen.ordo.api.StepKind; import com.jetlumen.ordo.api.definition.StepKind;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.time.Duration; import java.time.Duration;
import com.jetlumen.ordo.api.definition.ApprovalStep;
/** /**
* Maps rows of {@code ordo_approval_step}. A step's candidate list lives in the separate * Maps rows of {@code ordo_approval_step}. A step's candidate list lives in the separate
* {@code ordo_step_candidate} table, so this only reads the scalar step columns; the repository * {@code ordo_step_candidate} table, so this only reads the scalar step columns; the repository
* assembles the full {@link com.jetlumen.ordo.api.ApprovalStep} once candidates are loaded. * assembles the full {@link com.jetlumen.ordo.api.definition.ApprovalStep} once candidates are loaded.
*/ */
public final class ApprovalStepMapper { public final class ApprovalStepMapper {
private ApprovalStepMapper() { private ApprovalStepMapper() {
@@ -1,8 +1,8 @@
package com.jetlumen.ordo.storage.jdbc.mapper; package com.jetlumen.ordo.storage.jdbc.mapper;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.TaskAction; import com.jetlumen.ordo.api.runtime.TaskAction;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
@@ -2,8 +2,8 @@ package com.jetlumen.ordo.storage.jdbc.mapper;
import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.jetlumen.ordo.api.Jsons; import com.jetlumen.ordo.api.util.Jsons;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import java.util.Map; import java.util.Map;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.storage.jdbc.mapper; package com.jetlumen.ordo.storage.jdbc.mapper;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.ProcessEventType; import com.jetlumen.ordo.api.runtime.ProcessEventType;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
@@ -1,7 +1,7 @@
package com.jetlumen.ordo.storage.jdbc.mapper; package com.jetlumen.ordo.storage.jdbc.mapper;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
@@ -1,6 +1,6 @@
package com.jetlumen.ordo.storage.jdbc.mapper; package com.jetlumen.ordo.storage.jdbc.mapper;
import com.jetlumen.ordo.api.RoutingWhen; import com.jetlumen.ordo.api.definition.RoutingWhen;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
@@ -1,12 +1,12 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ActionExecution; import com.jetlumen.ordo.api.runtime.ActionExecution;
import com.jetlumen.ordo.api.ActionExecutionStatus; import com.jetlumen.ordo.api.runtime.ActionExecutionStatus;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@@ -1,13 +1,13 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.TaskAction; import com.jetlumen.ordo.api.runtime.TaskAction;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.query.TaskQuery; import com.jetlumen.ordo.api.query.TaskQuery;
@@ -1,19 +1,19 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ActionHandler; import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.AssigneeResolver; import com.jetlumen.ordo.api.spi.AssigneeResolver;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.ParallelBranch; import com.jetlumen.ordo.api.definition.ParallelBranch;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.StepTransition; import com.jetlumen.ordo.api.definition.StepTransition;
import com.jetlumen.ordo.api.TaskAction; import com.jetlumen.ordo.api.runtime.TaskAction;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.core.DefaultOrdoEngine; import com.jetlumen.ordo.core.DefaultOrdoEngine;
import com.jetlumen.ordo.storage.jdbc.dialect.SqlDialect; import com.jetlumen.ordo.storage.jdbc.dialect.SqlDialect;
import com.jetlumen.ordo.storage.jdbc.dialect.SqlDialects; import com.jetlumen.ordo.storage.jdbc.dialect.SqlDialects;
@@ -1,25 +1,25 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ActionExecutionStatus; import com.jetlumen.ordo.api.runtime.ActionExecutionStatus;
import com.jetlumen.ordo.api.ActionHandler; import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.ApprovalPolicy; import com.jetlumen.ordo.api.definition.ApprovalPolicy;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.AssigneeResolver; import com.jetlumen.ordo.api.spi.AssigneeResolver;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.ParallelBranch; import com.jetlumen.ordo.api.definition.ParallelBranch;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.ProcessEventType; import com.jetlumen.ordo.api.runtime.ProcessEventType;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.StepKind; import com.jetlumen.ordo.api.definition.StepKind;
import com.jetlumen.ordo.api.StepDue; import com.jetlumen.ordo.api.definition.StepDue;
import com.jetlumen.ordo.api.StepTransition; import com.jetlumen.ordo.api.definition.StepTransition;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.api.exception.InstanceAlreadyCompletedException; import com.jetlumen.ordo.api.exception.InstanceAlreadyCompletedException;
import com.jetlumen.ordo.api.exception.UnauthorizedInstanceOperationException; import com.jetlumen.ordo.api.exception.UnauthorizedInstanceOperationException;
import com.jetlumen.ordo.api.exception.NoRouteFoundException; import com.jetlumen.ordo.api.exception.NoRouteFoundException;
@@ -1,19 +1,19 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ActionHandler; import com.jetlumen.ordo.api.spi.ActionHandler;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ApprovalTask; import com.jetlumen.ordo.api.runtime.ApprovalTask;
import com.jetlumen.ordo.api.AssigneeResolver; import com.jetlumen.ordo.api.spi.AssigneeResolver;
import com.jetlumen.ordo.api.OrdoEngine; import com.jetlumen.ordo.api.OrdoEngine;
import com.jetlumen.ordo.api.ParallelBranch; import com.jetlumen.ordo.api.definition.ParallelBranch;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.RoutingCondition; import com.jetlumen.ordo.api.spi.RoutingCondition;
import com.jetlumen.ordo.api.StepTransition; import com.jetlumen.ordo.api.definition.StepTransition;
import com.jetlumen.ordo.api.TaskAction; import com.jetlumen.ordo.api.runtime.TaskAction;
import com.jetlumen.ordo.api.TaskStatus; import com.jetlumen.ordo.api.runtime.TaskStatus;
import com.jetlumen.ordo.core.DefaultOrdoEngine; import com.jetlumen.ordo.core.DefaultOrdoEngine;
import org.junit.jupiter.api.AfterAll; import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Assumptions; import org.junit.jupiter.api.Assumptions;
@@ -1,13 +1,13 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ApprovalPolicy; import com.jetlumen.ordo.api.definition.ApprovalPolicy;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ParallelBranch; import com.jetlumen.ordo.api.definition.ParallelBranch;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.StepDue; import com.jetlumen.ordo.api.definition.StepDue;
import com.jetlumen.ordo.api.StepKind; import com.jetlumen.ordo.api.definition.StepKind;
import com.jetlumen.ordo.api.RoutingPredicate; import com.jetlumen.ordo.api.definition.RoutingPredicate;
import com.jetlumen.ordo.api.StepTransition; import com.jetlumen.ordo.api.definition.StepTransition;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@@ -1,12 +1,12 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessEvent; import com.jetlumen.ordo.api.runtime.ProcessEvent;
import com.jetlumen.ordo.api.ProcessEventType; import com.jetlumen.ordo.api.runtime.ProcessEventType;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;
import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.BeforeEach;
@@ -1,10 +1,10 @@
package com.jetlumen.ordo.storage.jdbc; package com.jetlumen.ordo.storage.jdbc;
import com.jetlumen.ordo.api.ApprovalStep; import com.jetlumen.ordo.api.definition.ApprovalStep;
import com.jetlumen.ordo.api.ProcessContext; import com.jetlumen.ordo.api.runtime.ProcessContext;
import com.jetlumen.ordo.api.ProcessDefinition; import com.jetlumen.ordo.api.definition.ProcessDefinition;
import com.jetlumen.ordo.api.ProcessInstance; import com.jetlumen.ordo.api.runtime.ProcessInstance;
import com.jetlumen.ordo.api.ProcessStatus; import com.jetlumen.ordo.api.runtime.ProcessStatus;
import com.jetlumen.ordo.api.query.InstanceQuery; import com.jetlumen.ordo.api.query.InstanceQuery;
import com.jetlumen.ordo.api.query.Page; import com.jetlumen.ordo.api.query.Page;
import com.jetlumen.ordo.api.query.PageRequest; import com.jetlumen.ordo.api.query.PageRequest;