View Source WorkflowMetal.Storage.Adapters.InMemory (workflow_metal v0.2.1)
An in-memory storage adapter useful for testing as no persistence provided.
storage
Storage
The data of :workflow_table
ETS table format:
{workflow_id, workflow_schema}
The data of :arc_table
ETS table format:
{arc_id, arc_schema, {workflow_id, place_id, transition_id, direction}}
The data of :place_table
ETS table format:
{place_id, place_schema, {place_type, workflow_id}}
The data of :transition_table
ETS table format:
{transition_id, transition_schema, workflow_id}
The data of :case_table
ETS table format:
{case_id, case_schema, {case_state, workflow_id}}
The data of :task_table
ETS table format:
{task_id, task_schema, {task_state, workflow_id, transition_id, case_id}}
The data of :token_table
ETS table format:
{token_id, token_schema, {workflow_id, case_id, place_id, produced_by_task_id, locked_by_task_id, state}}
The data of :workitem_table
ETS table format:
{workitem_id, workitem_schema, {workflow_id, case_id, task_id}}
Link to this section Summary
Functions
Returns a specification to start this module under a supervisor.
List tasks of the workflow.
List workitems of the workflow.
Reset state.
Link to this section Types
Specs
application() :: WorkflowMetal.Application.t()
Specs
task_schema() :: WorkflowMetal.Storage.Schema.Task.t()
Specs
workflow_id() :: WorkflowMetal.Storage.Schema.Workflow.id()
Specs
workitem_schema() :: WorkflowMetal.Storage.Schema.Workitem.t()
Link to this section Functions
Returns a specification to start this module under a supervisor.
See Supervisor
.
Specs
list_tasks(application(), workflow_id()) :: {:ok, [task_schema()]}
List tasks of the workflow.
Specs
list_workitems(application(), workflow_id()) :: {:ok, [workitem_schema()]}
List workitems of the workflow.
Reset state.