ChainGraph API Documentation / @badaitech/chaingraph-trpc / server / DBFlowStore
Class: DBFlowStore
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:26
In-memory implementation of flow storage
Implements
Constructors
Constructor
new DBFlowStore(
db,cacheEnabled,nodeRegistry):DBFlowStore
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:36
Parameters
db
NodePgDatabase<Record<string, unknown>> & object
cacheEnabled
boolean = true
nodeRegistry
NodeRegistry = ...
Returns
DBFlowStore
Methods
createFlow()
createFlow(
metadata):Promise<Flow>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:49
Creates a new flow with given metadata
Parameters
metadata
Flow metadata
Returns
Promise<Flow>
Created flow ID
Implementation of
deleteFlow()
deleteFlow(
flowId):Promise<boolean>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:133
Deletes flow
Parameters
flowId
string
Flow identifier
Returns
Promise<boolean>
true if flow was deleted, false if not found
Implementation of
getFlow()
getFlow(
flowId):Promise<Flow|null>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:68
Retrieves flow by ID
Parameters
flowId
string
Flow identifier
Returns
Promise<Flow | null>
Flow instance or null if not found
Implementation of
getFlowMetadata()
getFlowMetadata(
flowId):Promise<FlowMetadata|null>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:99
Parameters
flowId
string
Returns
Promise<FlowMetadata | null>
Implementation of
hasAccess()
hasAccess(
flowId,userId,cacheEnabled):Promise<boolean>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:169
Checks if user has access to flow
Parameters
flowId
string
Flow identifier
userId
string
User identifier
cacheEnabled
boolean = true
Returns
Promise<boolean>
true if user has access, false otherwise
Implementation of
listFlows()
listFlows(
ownerId,orderBy,limit):Promise<FlowMetadata[]>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:112
Lists all available flows ordered by updatedAt desc
Parameters
ownerId
string
orderBy
ListOrderBy
limit
number
Returns
Promise<FlowMetadata[]>
Array of flows
Implementation of
lockFlow()
lockFlow(
flowId,timeout):Promise<void>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:210
Locks a flow to prevent concurrent modifications. If the flow is already locked, this method will block until the lock is released.
Parameters
flowId
string
Flow identifier
timeout
number = 5000
Lock timeout in milliseconds (default: 5000 ms)
Returns
Promise<void>
Throws
Error if flow doesn't exist
Implementation of
unlockFlow()
unlockFlow(
flowId):Promise<void>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:250
Unlocks a previously locked flow and grants lock to the next waiter if any
Parameters
flowId
string
Flow identifier
Returns
Promise<void>
Throws
Error if flow doesn't exist
Implementation of
updateFlow()
updateFlow(
flow):Promise<Flow>
Defined in: packages/chaingraph-trpc/server/stores/flowStore/dbFlowStore.ts:149
Updates flow with new data
Parameters
flow
Flow data
Returns
Promise<Flow>
Updated flow