Class FileSchemePersistencePostgreSQLProvider
OptimaJet.Workflow.PostgreSQL.FileSchemePersistencePostgreSQLProvider
Namespace: OptimaJet.Workflow.PostgreSQL
public class FileSchemePersistencePostgreSQLProvider : PostgreSQLProvider, IWorkflowProvider, IPersistenceProvider, IApprovalProvider, IFormDataProvider, ISchemePersistenceProvider<XElement>, IWorkflowGenerator<XElement>, IMigratableType Hierarchy
- PostgreSQLProvider
- FileSchemePersistencePostgreSQLProvider Current type
Constructors
public FileSchemePersistencePostgreSQLProvider(string storePath, string connectionString, string schemaName = "public", bool writeToHistory = true, bool writeSubProcessToRoot = true) #Parameters
Name
Type
Description
storePathStringconnectionStringStringschemaNameStringwriteToHistoryBooleanwriteSubProcessToRootBooleanMethods
public override Task AddSchemeTagsAsync(string schemeCode, IEnumerable<string> tags) #Adds tags to a source scheme in the shared scope.
Parameters
Name
Type
Description
schemeCodeStringThe code of the shared source scheme.
tagsIEnumerable<String>The scheme tags to add.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when the shared source scheme identified by
schemeCode does not exist.public override Task AddSchemeTagsAsync(string schemeCode, string tenantId, IEnumerable<string> tags) #Adds tags to a source scheme in an exact tenant scope.
Parameters
Name
Type
Description
schemeCodeStringThe source scheme code.
tagsIEnumerable<String>The scheme tags to add.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when no source scheme with
schemeCode exists in the scope selected by tenantId.public override Task<List<string>> GetInlinedSchemeCodesAsync(string tenantId = null) #Gets the distinct codes of schemes available for use as inlinable schemes.
Parameters
Name
Type
Description
tenantIdStringThe tenant identifier. When specified, the result includes shared schemes and schemes in that tenant scope; when null, the result includes only shared schemes.
Returns
Type
Description
Task<String>The distinct inlinable scheme codes.
public override Task<XElement> GetSchemeAsync(string code, string tenantId = null) #Gets the unparsed source scheme identified by a scheme code.
Parameters
Name
Type
Description
codeStringThe code of the source scheme to retrieve.
tenantIdStringThe tenant identifier used to prefer a tenant-specific scheme over a shared scheme, or null to search only shared schemes.
Returns
Type
Description
Task<XElement>The unparsed source scheme represented by XElement.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when no source scheme with
code is available in the requested scope.public override Task RemoveSchemeTagsAsync(string schemeCode, IEnumerable<string> tags) #Removes tags from a source scheme in the shared scope.
Parameters
Name
Type
Description
schemeCodeStringThe code of the shared source scheme.
tagsIEnumerable<String>The scheme tags to remove.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when the shared source scheme identified by
schemeCode does not exist.public override Task RemoveSchemeTagsAsync(string schemeCode, string tenantId, IEnumerable<string> tags) #Removes tags from a source scheme in an exact tenant scope.
Parameters
Name
Type
Description
schemeCodeStringThe source scheme code.
tagsIEnumerable<String>The scheme tags to remove.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when no source scheme with
schemeCode exists in the scope selected by tenantId.public override Task SaveSchemeAsync(string schemaCode, bool canBeInlined, List<string> inlinedSchemes, string scheme, List<string> tags, string tenantId = null) #Saves an unparsed source scheme together with its Scheme Inlining relationships and tags.
Parameters
Name
Type
Description
schemaCodeStringinlinedSchemesList<String>The codes of the inlinable schemes referenced by this scheme.
schemeStringThe serialized unparsed source scheme.
tagsList<String>The scheme tags to store.
tenantIdStringThe tenant identifier that defines the exact storage scope, or null for a shared scheme.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
public override Task<List<string>> SearchSchemesByTagsAsync(IEnumerable<string> tags) #Gets the codes of shared schemes that match at least one specified tag.
Parameters
Name
Type
Description
tagsIEnumerable<String>The tags to match, or null to return all shared scheme codes. An empty collection also returns all shared scheme codes.
Returns
Type
Description
Task<String>The matching shared scheme codes.
public override Task<List<string>> SearchSchemesByTagsAsync(string tenantId, IEnumerable<string> tags) #Gets the codes of schemes in an exact tenant scope that match at least one specified tag.
Parameters
Name
Type
Description
tenantIdStringThe tenant identifier that defines the exact search scope, or null to search shared schemes.
tagsIEnumerable<String>The tags to match, or null to return every scheme code in the selected scope. An empty collection also returns every scheme code in that scope.
Returns
Type
Description
Task<String>The matching scheme codes in the selected scope.
public override Task SetSchemeTagsAsync(string schemeCode, IEnumerable<string> tags) #Replaces all tags on a source scheme in the shared scope.
Parameters
Name
Type
Description
schemeCodeStringThe code of the shared source scheme.
tagsIEnumerable<String>The replacement scheme tags; an empty collection removes all tags.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when the shared source scheme identified by
schemeCode does not exist.public override Task SetSchemeTagsAsync(string schemeCode, string tenantId, IEnumerable<string> tags) #Replaces all tags on a source scheme in an exact tenant scope.
Parameters
Name
Type
Description
schemeCodeStringThe source scheme code.
tagsIEnumerable<String>The replacement scheme tags; an empty collection removes all tags.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when no source scheme with
schemeCode exists in the scope selected by tenantId.public override Task<List<string>> SearchSchemesByTagsInTenantAsync(string tenantId, params string[] tags) #Gets the codes of schemes in a specified tenant that match at least one specified tag.
Parameters
Name
Type
Description
tenantIdStringThe tenant identifier that defines the exact search scope.
tagsString[]The tags to match. If the array is null or empty, every scheme code in the tenant scope is returned.
Returns
Type
Description
Task<String>The matching scheme codes in the specified tenant.
public override Task AddSchemeTagsInTenantAsync(string schemeCode, string tenantId, params string[] tags) #Adds tags to a source scheme in a specified tenant.
Parameters
Name
Type
Description
schemeCodeStringThe source scheme code.
tenantIdStringThe tenant identifier that defines the exact scope.
tagsString[]The scheme tags to add.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when no source scheme with
schemeCode exists in the scope selected by tenantId.public override Task RemoveSchemeTagsInTenantAsync(string schemeCode, string tenantId, params string[] tags) #Removes tags from a source scheme in a specified tenant.
Parameters
Name
Type
Description
schemeCodeStringThe source scheme code.
tenantIdStringThe tenant identifier that defines the exact scope.
tagsString[]The scheme tags to remove.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when no source scheme with
schemeCode exists in the scope selected by tenantId.public override Task SetSchemeTagsInTenantAsync(string schemeCode, string tenantId, params string[] tags) #Replaces all tags on a source scheme in a specified tenant.
Parameters
Name
Type
Description
schemeCodeStringThe source scheme code.
tenantIdStringThe tenant identifier that defines the exact scope.
tagsString[]The replacement scheme tags; an empty array removes all tags.
Returns
Type
Description
TaskA Task that represents the asynchronous operation.
Exceptions
Type
Description
SchemeNotFoundExceptionThrown when no source scheme with
schemeCode exists in the scope selected by tenantId.public override void Init(WorkflowRuntime runtime) #Initializes the persistence provider for a WorkflowRuntime.
Parameters
Name
Type
Description
runtimeWorkflowRuntimeThe WorkflowRuntime that uses this provider.