feat(wfe-core): add models, traits, and error types
Core domain models: WorkflowInstance, ExecutionPointer, WorkflowDefinition, WorkflowStep, Event, EventSubscription, ScheduledCommand, ExecutionError, LifecycleEvent, PollEndpointConfig. All serde-serializable. Provider traits: PersistenceProvider (composite of WorkflowRepository, EventRepository, SubscriptionRepository, ScheduledCommandRepository), DistributedLockProvider, QueueProvider, SearchIndex, LifecyclePublisher, WorkflowMiddleware, StepMiddleware, WorkflowRegistry. StepBody trait with StepExecutionContext for workflow step implementations. WorkflowData marker trait (blanket impl for Serialize + DeserializeOwned).
This commit is contained in:
20
wfe-core/src/traits/mod.rs
Normal file
20
wfe-core/src/traits/mod.rs
Normal file
@@ -0,0 +1,20 @@
|
||||
pub mod lifecycle;
|
||||
pub mod lock;
|
||||
pub mod middleware;
|
||||
pub mod persistence;
|
||||
pub mod queue;
|
||||
pub mod registry;
|
||||
pub mod search;
|
||||
pub mod step;
|
||||
|
||||
pub use lifecycle::LifecyclePublisher;
|
||||
pub use lock::DistributedLockProvider;
|
||||
pub use middleware::{StepMiddleware, WorkflowMiddleware};
|
||||
pub use persistence::{
|
||||
EventRepository, PersistenceProvider, ScheduledCommandRepository, SubscriptionRepository,
|
||||
WorkflowRepository,
|
||||
};
|
||||
pub use queue::QueueProvider;
|
||||
pub use registry::WorkflowRegistry;
|
||||
pub use search::{Page, SearchFilter, SearchIndex, WorkflowSearchResult};
|
||||
pub use step::{StepBody, StepExecutionContext, WorkflowData};
|
||||
Reference in New Issue
Block a user