Assembly: OptimaJet.Workflow.Oracle

Class FileSchemePersistenceOracleProvider

OptimaJet.Workflow.Oracle.FileSchemePersistenceOracleProvider

public class FileSchemePersistenceOracleProvider : OracleProvider, IWorkflowProvider, IPersistenceProvider, IApprovalProvider, IFormDataProvider, ISchemePersistenceProvider<XElement>, IWorkflowGenerator<XElement>, IMigratable

Type Hierarchy

Constructors

public FileSchemePersistenceOracleProvider(string storePath, string connectionString, string schemaName = null, bool writeToHistory = true, bool writeSubProcessToRoot = true) #

Parameters

Name
Type
Description
storePath
String
connectionString
String
schemaName
String
writeToHistory
Boolean
writeSubProcessToRoot
Boolean

Methods

public override Task AddSchemeTagsAsync(string schemeCode, IEnumerable<string> tags) #
Adds tags to a source scheme in the shared scope.

Parameters

Name
Type
Description
schemeCode
String
The code of the shared source scheme.
tags
IEnumerable<String>
The scheme tags to add.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
schemeCode
String
The source scheme code.
tenantId
String
The tenant identifier that defines the exact scope, or null for the shared scope.
tags
IEnumerable<String>
The scheme tags to add.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
tenantId
String
The 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<List<string>> GetRelatedByInliningSchemeCodesAsync(string schemeCode, string tenantId = null) #
Gets the distinct codes of schemes that inline the specified scheme.

Parameters

Name
Type
Description
schemeCode
String
The code of the inlinable scheme.
tenantId
String
The tenant identifier of the parent schemes to search. When specified, only that tenant scope is searched; when null, shared schemes and all tenant scopes are searched.

Returns

Type
Description
Task<String>
The distinct codes of schemes that inline the specified scheme.
public override Task<XElement> GetSchemeAsync(string code, string tenantId = null) #
Gets the unparsed source scheme identified by a scheme code.

Parameters

Name
Type
Description
code
String
The code of the source scheme to retrieve.
tenantId
String
The 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
SchemeNotFoundException
Thrown 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
schemeCode
String
The code of the shared source scheme.
tags
IEnumerable<String>
The scheme tags to remove.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
schemeCode
String
The source scheme code.
tenantId
String
The tenant identifier that defines the exact scope, or null for the shared scope.
tags
IEnumerable<String>
The scheme tags to remove.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
schemaCode
String
canBeInlined
Boolean
true if the scheme can be inlined into another scheme; otherwise, false.
inlinedSchemes
List<String>
The codes of the inlinable schemes referenced by this scheme.
scheme
String
The serialized unparsed source scheme.
tags
List<String>
The scheme tags to store.
tenantId
String
The tenant identifier that defines the exact storage scope, or null for a shared scheme.

Returns

Type
Description
Task
A 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
tags
IEnumerable<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
tenantId
String
The tenant identifier that defines the exact search scope, or null to search shared schemes.
tags
IEnumerable<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
schemeCode
String
The code of the shared source scheme.
tags
IEnumerable<String>
The replacement scheme tags; an empty collection removes all tags.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
schemeCode
String
The source scheme code.
tenantId
String
The tenant identifier that defines the exact scope, or null for the shared scope.
tags
IEnumerable<String>
The replacement scheme tags; an empty collection removes all tags.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
tenantId
String
The tenant identifier that defines the exact search scope.
tags
String[]
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
schemeCode
String
The source scheme code.
tenantId
String
The tenant identifier that defines the exact scope.
tags
String[]
The scheme tags to add.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
schemeCode
String
The source scheme code.
tenantId
String
The tenant identifier that defines the exact scope.
tags
String[]
The scheme tags to remove.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
schemeCode
String
The source scheme code.
tenantId
String
The tenant identifier that defines the exact scope.
tags
String[]
The replacement scheme tags; an empty array removes all tags.

Returns

Type
Description
Task
A Task that represents the asynchronous operation.

Exceptions

Type
Description
SchemeNotFoundException
Thrown 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
runtime
WorkflowRuntime
The WorkflowRuntime that uses this provider.