# Class WorkflowProcessInstancePersistence OptimaJet.Workflow.Oracle.WorkflowProcessInstancePersistence Namespace: [OptimaJet.Workflow.Oracle](https://api.workflowengine.io/oracle/OptimaJet.Workflow.Oracle/) ```csharp public class WorkflowProcessInstancePersistence : DbObject ``` ## Type Hierarchy - [DbObject](https://api.workflowengine.io/oracle/OptimaJet.Workflow.Oracle/DbObject-TEntity/) - WorkflowProcessInstancePersistence Current type ## Constructors `public WorkflowProcessInstancePersistence(string schemaName, int commandTimeout)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `schemaName` | `String` | | | `commandTimeout` | `Int32` | | ## Methods `public Task SelectByProcessIdAsync(OracleConnection connection, Guid processId)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `OracleConnection` | | | `processId` | `Guid` | | ### Returns | Type | Description | | --- | --- | | `Task` | | `public Task SelectByNameAsync(OracleConnection connection, Guid processId, string parameterName)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `OracleConnection` | | | `processId` | `Guid` | | | `parameterName` | `String` | | ### Returns | Type | Description | | --- | --- | | `Task` | | `public Task DeleteByProcessIdAsync(OracleConnection connection, Guid processId, OracleTransaction transaction)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `OracleConnection` | | | `processId` | `Guid` | | | `transaction` | `OracleTransaction` | | ### Returns | Type | Description | | --- | --- | | `Task` | | `public Task DeleteByNameAsync(OracleConnection connection, Guid processId, string parameterName)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `OracleConnection` | | | `processId` | `Guid` | | | `parameterName` | `String` | | ### Returns | Type | Description | | --- | --- | | `Task` | | `public Task DeleteByNameAsync(OracleConnection connection, Guid processId, string parameterName, OracleTransaction transaction)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `OracleConnection` | | | `processId` | `Guid` | | | `parameterName` | `String` | | | `transaction` | `OracleTransaction` | | ### Returns | Type | Description | | --- | --- | | `Task` | | `public Task UpsertAsync(OracleConnection connection, ProcessInstancePersistenceEntity entity, bool preferUpdateFirst, OracleTransaction transaction)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `OracleConnection` | | | `entity` | `ProcessInstancePersistenceEntity` | | | `preferUpdateFirst` | `Boolean` | | | `transaction` | `OracleTransaction` | | ### Returns | Type | Description | | --- | --- | | `Task` | | [Previous WorkflowProcessInstance](https://api.workflowengine.io/oracle/OptimaJet.Workflow.Oracle/WorkflowProcessInstance/) [Next WorkflowProcessInstanceStatus](https://api.workflowengine.io/oracle/OptimaJet.Workflow.Oracle/WorkflowProcessInstanceStatus/)