Class WorkflowProcessInstancePersistence
OptimaJet.Workflow.SQLite.WorkflowProcessInstancePersistence
Database object for workflow process instance persistence parameter operations.
Namespace: OptimaJet.Workflow.SQLite
public class WorkflowProcessInstancePersistence : DbObject<ProcessInstancePersistenceEntity>Inheritance
- Object
- DbObject<ProcessInstancePersistenceEntity>
Constructors
public WorkflowProcessInstancePersistence(string schemaName, int commandTimeout) #Initializes a new instance of WorkflowProcessInstancePersistence.
Parameters
Name
Type
Description
schemaNameStringThe database schema name.
commandTimeoutInt32The command timeout in seconds.
Methods
public Task<ProcessInstancePersistenceEntity[]> SelectByProcessIdAsync(SqliteConnection connection, Guid processId) #Selects all persistence parameter entities for the specified process.
Parameters
Name
Type
Description
connectionSqliteConnectionThe SQLite connection.
processIdGuidThe process identifier.
Returns
Type
Description
Task<ProcessInstancePersistenceEntity[]>An array of persistence parameter entities.
public Task<ProcessInstancePersistenceEntity> SelectByNameAsync(SqliteConnection connection, Guid processId, string parameterName) #Selects a single persistence parameter entity by process identifier and parameter name.
Parameters
Name
Type
Description
connectionSqliteConnectionThe SQLite connection.
processIdGuidThe process identifier.
parameterNameStringThe parameter name.
Returns
Type
Description
Task<ProcessInstancePersistenceEntity>The matching entity, or
null if not found.public Task<int> DeleteByProcessIdAsync(SqliteConnection connection, Guid processId, SqliteTransaction transaction = null) #Deletes all persistence parameters for the specified process.
Parameters
Name
Type
Description
connectionSqliteConnectionThe SQLite connection.
processIdGuidThe process identifier.
transactionSqliteTransactionAn optional transaction.
Returns
Type
Description
Task<Int32>The number of rows affected.
public Task<int> DeleteByNameAsync(SqliteConnection connection, Guid processId, string parameterName, SqliteTransaction transaction = null) #Deletes a single persistence parameter by process identifier and parameter name.
Parameters
Name
Type
Description
connectionSqliteConnectionThe SQLite connection.
processIdGuidThe process identifier.
parameterNameStringThe parameter name.
transactionSqliteTransactionAn optional transaction.
Returns
Type
Description
Task<Int32>The number of rows affected.
public Task UpsertAsync(SqliteConnection connection, ProcessInstancePersistenceEntity entity, bool preferUpdateFirst, SqliteTransaction transaction) #Inserts or updates a persistence parameter, choosing the operation order based on
preferUpdateFirst. When preferUpdateFirst is true, attempts UPDATE first with INSERT fallback. Otherwise, attempts INSERT first with UPDATE fallback on duplicate key.Parameters
Name
Type
Description
connectionSqliteConnectionThe SQLite connection.
entityProcessInstancePersistenceEntityThe persistence parameter entity to upsert.
preferUpdateFirstBooleanWhether to attempt UPDATE before INSERT.
transactionSqliteTransactionThe transaction to execute within.
Returns
Type
Description
TaskA task that represents the asynchronous operation.