Class WorkflowParser<TSchemeMedium>
Base workflow parser, which parses not parsed process scheme OptimaJet.Workflow.Core.Model.SchemeDefinition%601 to the object model of a scheme of a process ProcessDefinition
Inheritance
↳ object
↳ WorkflowParser<TSchemeMedium>
↳ XmlWorkflowParser
Implements
IWorkflowParser<<TSchemeMedium>>
Inherited Members
Equals(object)
Equals(object, object)
GetHashCode()
GetType()
MemberwiseClone()
ReferenceEquals(object, object)
ToString()
Namespace: OptimaJet.Workflow.Core.Parser
Assembly: OptimaJet.Workflow.Core.dll
Syntax
public abstract class WorkflowParser<TSchemeMedium> : IWorkflowParser<TSchemeMedium> where TSchemeMedium : class
Methods
ParseTimers(TSchemeMedium)
Parses timers from not parsed scheme in theirs object model
Declaration
public abstract List<TimerDefinition> ParseTimers(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
List<TimerDefinition> | List of <xref href="OptimaJet.Workflow.Core.Model.TimerDefinition" data-throw-if-not-resolved="false"></xref> objects |
ParseActors(TSchemeMedium)
Parses actors from not parsed scheme in theirs object model
Declaration
public abstract List<ActorDefinition> ParseActors(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
List<ActorDefinition> | List of <xref href="OptimaJet.Workflow.Core.Model.ActorDefinition" data-throw-if-not-resolved="false"></xref> objects |
ParseLocalization(TSchemeMedium)
Parses localization items from not parsed scheme in theirs object model
Declaration
public abstract List<Translation> ParseLocalization(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
List<Translation> | List of <xref href="OptimaJet.Workflow.Core.Model.Translation" data-throw-if-not-resolved="false"></xref> objects |
ParseParameters(TSchemeMedium, SchemeParsingType)
Parses parameters from not parsed scheme in theirs object model
Declaration
public abstract List<ParameterDefinition> ParseParameters(TSchemeMedium schemeMedium, SchemeParsingType schemeParsingType = SchemeParsingType.Strict)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
SchemeParsingType | schemeParsingType | Type of parsing strict or soft. Uses only for upload operations where we need softer scheme check |
Returns
Type | Description |
---|
List<ParameterDefinition> | List of <xref href="OptimaJet.Workflow.Core.Model.ParameterDefinition" data-throw-if-not-resolved="false"></xref> objects |
ParseCommands(TSchemeMedium, List<ParameterDefinition>)
Parses commands from not parsed scheme in theirs object model
Declaration
public abstract List<CommandDefinition> ParseCommands(TSchemeMedium schemeMedium, List<ParameterDefinition> parameterDefinitions)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
List<ParameterDefinition> | parameterDefinitions | List of parsed parameters <xref href="OptimaJet.Workflow.Core.Model.ParameterDefinition" data-throw-if-not-resolved="false"></xref> |
Returns
Type | Description |
---|
List<CommandDefinition> | List of <xref href="OptimaJet.Workflow.Core.Model.CommandDefinition" data-throw-if-not-resolved="false"></xref> objects |
Parses comments from not parsed scheme in theirs object model
Declaration
public abstract List<CommentDefinition> ParseComments(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
List<CommentDefinition> | List of <xref href="OptimaJet.Workflow.Core.Model.CommentDefinition" data-throw-if-not-resolved="false"></xref> objects |
GetCalendarName(TSchemeMedium)
Parses calendar from not parsed scheme in its object model
Declaration
public abstract string GetCalendarName(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
string | <xref href="OptimaJet.Workflow.Core.Runtime.Calendars.ICalendar" data-throw-if-not-resolved="false"></xref> object |
ParseActivities(TSchemeMedium)
Parses activities from not parsed scheme in theirs object model
Declaration
public abstract List<ActivityDefinition> ParseActivities(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
List<ActivityDefinition> | List of <xref href="OptimaJet.Workflow.Core.Model.ActivityDefinition" data-throw-if-not-resolved="false"></xref> objects |
ParseCodeActions(TSchemeMedium)
Parses code actions from not parsed scheme in theirs object model
Declaration
public abstract List<CodeActionDefinition> ParseCodeActions(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
List<CodeActionDefinition> | List of <xref href="OptimaJet.Workflow.Core.Model.CodeActionDefinition" data-throw-if-not-resolved="false"></xref> objects |
ParseTransitions(TSchemeMedium, List<ActorDefinition>, List<CommandDefinition>, List<ActivityDefinition>, List<TimerDefinition>)
Parses transitions from not parsed scheme in theirs object model
Declaration
public abstract List<TransitionDefinition> ParseTransitions(TSchemeMedium schemeMedium, List<ActorDefinition> actorDefinitions, List<CommandDefinition> commandDefinitions, List<ActivityDefinition> activityDefinitions, List<TimerDefinition> timerDefinitions)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
List<ActorDefinition> | actorDefinitions | List of parsed actors <xref href="OptimaJet.Workflow.Core.Model.ActorDefinition" data-throw-if-not-resolved="false"></xref> |
List<CommandDefinition> | commandDefinitions | List of parsed commands <xref href="OptimaJet.Workflow.Core.Model.CommandDefinition" data-throw-if-not-resolved="false"></xref> |
List<ActivityDefinition> | activityDefinitions | List of parsed activities <xref href="OptimaJet.Workflow.Core.Model.ActivityDefinition" data-throw-if-not-resolved="false"></xref> |
List<TimerDefinition> | timerDefinitions | List of parsed timers <xref href="OptimaJet.Workflow.Core.Model.TimerDefinition" data-throw-if-not-resolved="false"></xref> |
Returns
Type | Description |
---|
List<TransitionDefinition> | List of <xref href="OptimaJet.Workflow.Core.Model.TransitionDefinition" data-throw-if-not-resolved="false"></xref> objects |
GetSchemeCode(TSchemeMedium)
Gets the code of the scheme from not parsed scheme
Declaration
public abstract string GetSchemeCode(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
string | Code of the scheme |
GetCanBeInlined(TSchemeMedium)
Gets the sign that the scheme can be inlined in other schemes
Declaration
public abstract bool GetCanBeInlined(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
bool | Can be inlined sign |
GetLogEnabled(TSchemeMedium)
Get the sign that the ProcessInstance will be logging after create
Declaration
public abstract bool GetLogEnabled(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
bool | Enable process logging |
Get list of scheme tags
Declaration
public abstract List<string> GetSchemeTags(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | |
Returns
Type | Description |
---|
List<string> | |
GetCommonUsings(TSchemeMedium)
Get list of common usings separated by ;
Declaration
public abstract string GetCommonUsings(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | |
Returns
GetDesignerSettings(TSchemeMedium)
Gets designer settings from not parsed scheme
Declaration
public abstract DesignerSettings GetDesignerSettings(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | Not parsed scheme |
Returns
Type | Description |
---|
DesignerSettings | Designer settings <xref href="OptimaJet.Workflow.Core.Model.DesignerSettings" data-throw-if-not-resolved="false"></xref> |
GetExecutionTimeout(TSchemeMedium)
Gets execution timeout for activity
Declaration
public abstract ActivityTimeout GetExecutionTimeout(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | |
Returns
Type | Description |
---|
ActivityTimeout | Execution timeout <xref href="OptimaJet.Workflow.Core.Model.ActivityTimeout" data-throw-if-not-resolved="false"></xref> |
GetIdleTimeout(TSchemeMedium)
Gets idle timeout for activity
Declaration
public abstract ActivityTimeout GetIdleTimeout(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | |
Returns
Type | Description |
---|
ActivityTimeout | Idle timeout <xref href="OptimaJet.Workflow.Core.Model.ActivityTimeout" data-throw-if-not-resolved="false"></xref> |
GetExceptionsHandlers(TSchemeMedium)
Gets exceptions handler for activity
Declaration
public abstract List<ActivityExceptionsHandler> GetExceptionsHandlers(TSchemeMedium schemeMedium)
Parameters
Type | Name | Description |
---|
{TSchemeMedium} | schemeMedium | |
Returns
Type | Description |
---|
List<ActivityExceptionsHandler> | Exceptions handler |
Parse(WorkflowRuntime, string, SchemeParsingType)
Returns object model of the scheme of a process
Declaration
public abstract ProcessDefinition Parse(WorkflowRuntime workflowRuntime, string scheme, SchemeParsingType schemeParsingType = SchemeParsingType.Strict)
Parameters
Type | Name | Description |
---|
WorkflowRuntime | workflowRuntime | |
string | scheme | String representation of not parsed sheme |
SchemeParsingType | schemeParsingType | |
Returns
Type | Description |
---|
ProcessDefinition | ProcessDefinition object |
SerializeToSchemeMedium(ProcessDefinition)
Serializes object model of the scheme to not parsed scheme
Declaration
public abstract TSchemeMedium SerializeToSchemeMedium(ProcessDefinition processDefinition)
Parameters
Type | Name | Description |
---|
ProcessDefinition | processDefinition | ProcessDefinition object |
Returns
Type | Description |
---|
{TSchemeMedium} | Not parsed scheme |
SerializeToString(ProcessDefinition)
Serializes object model of the scheme to string
Declaration
public virtual string SerializeToString(ProcessDefinition processDefinition)
Parameters
Type | Name | Description |
---|
ProcessDefinition | processDefinition | ProcessDefinition object |
Returns
Type | Description |
---|
string | String representation of not parsed scheme |
Parse(WorkflowRuntime, TSchemeMedium, SchemeParsingType)
Returns object model of the scheme of a process
Declaration
public ProcessDefinition Parse(WorkflowRuntime workflowRuntime, TSchemeMedium schemeMedium, SchemeParsingType schemeParsingType = SchemeParsingType.Strict)
Parameters
Type | Name | Description |
---|
WorkflowRuntime | workflowRuntime | |
{TSchemeMedium} | schemeMedium | Not parsed scheme |
SchemeParsingType | schemeParsingType | Type of parsing strict or soft. Uses only for upload operations where we need softer scheme check |
Returns
Type | Description |
---|
ProcessDefinition | ProcessDefinition object |
Extension Methods