Workflow Engine .NET

Assembly: OptimaJet.Workflow.Core

Class WorkflowParser<TSchemeMedium>

OptimaJet.Workflow.Core.Parser.WorkflowParser<TSchemeMedium>

Base workflow parser, which parses not parsed process scheme SchemeDefinition<T> to the object model of a scheme of a process ProcessDefinition

public abstract class WorkflowParser<TSchemeMedium> : IWorkflowParser<TSchemeMedium> where TSchemeMedium : class

Inheritance

  • System.Object

Implemented Interfaces

  • OptimaJet.Workflow.Core.Parser.IWorkflowParser{{TSchemeMedium}}

Methods

public abstract List<TimerDefinition> ParseTimers(TSchemeMedium schemeMedium) #
Parses timers from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
List<TimerDefinition>
List of TimerDefinition objects
public abstract List<ActorDefinition> ParseActors(TSchemeMedium schemeMedium) #
Parses actors from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
List<ActorDefinition>
List of ActorDefinition objects
public abstract List<Translation> ParseLocalization(TSchemeMedium schemeMedium) #
Parses localization items from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
List<Translation>
List of Translation objects
public abstract List<ParameterDefinition> ParseParameters(TSchemeMedium schemeMedium, SchemeParsingType schemeParsingType = SchemeParsingType.Strict) #
Parses parameters from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
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 ParameterDefinition objects
public abstract List<CommandDefinition> ParseCommands(TSchemeMedium schemeMedium, List<ParameterDefinition> parameterDefinitions) #
Parses commands from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme
parameterDefinitions
List<ParameterDefinition>
List of parsed parameters ParameterDefinition

Returns

Type
Description
List<CommandDefinition>
List of CommandDefinition objects
public abstract List<CommentDefinition> ParseComments(TSchemeMedium schemeMedium) #
Parses comments from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
List<CommentDefinition>
List of CommentDefinition objects
public abstract string GetCalendarName(TSchemeMedium schemeMedium) #
Parses calendar from not parsed scheme in its object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
String
ICalendar object
public abstract List<ActivityDefinition> ParseActivities(TSchemeMedium schemeMedium) #
Parses activities from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
List<ActivityDefinition>
List of ActivityDefinition objects
public abstract List<CodeActionDefinition> ParseCodeActions(TSchemeMedium schemeMedium) #
Parses code actions from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
List<CodeActionDefinition>
List of CodeActionDefinition objects
public abstract List<TransitionDefinition> ParseTransitions(TSchemeMedium schemeMedium, List<ActorDefinition> actorDefinitions, List<CommandDefinition> commandDefinitions, List<ActivityDefinition> activityDefinitions, List<TimerDefinition> timerDefinitions) #
Parses transitions from not parsed scheme in theirs object model

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme
actorDefinitions
List<ActorDefinition>
List of parsed actors ActorDefinition
commandDefinitions
List<CommandDefinition>
List of parsed commands CommandDefinition
activityDefinitions
List<ActivityDefinition>
List of parsed activities ActivityDefinition
timerDefinitions
List<TimerDefinition>
List of parsed timers TimerDefinition

Returns

Type
Description
List<TransitionDefinition>
List of TransitionDefinition objects
public abstract string GetSchemeCode(TSchemeMedium schemeMedium) #
Gets the code of the scheme from not parsed scheme

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
String
Code of the scheme
public abstract bool GetCanBeInlined(TSchemeMedium schemeMedium) #
Gets the sign that the scheme can be inlined in other schemes

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
Boolean
Can be inlined sign
public abstract bool GetLogEnabled(TSchemeMedium schemeMedium) #
Get the sign that the ProcessInstance will be logging after create

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
Boolean
Enable process logging
public abstract List<string> GetSchemeTags(TSchemeMedium schemeMedium) #
Get list of scheme tags

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}

Returns

Type
Description
List<String>
public abstract string GetCommonUsings(TSchemeMedium schemeMedium) #
Get list of common usings separated by ;

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}

Returns

Type
Description
String
public abstract DesignerSettings GetDesignerSettings(TSchemeMedium schemeMedium) #
Gets designer settings from not parsed scheme

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}
Not parsed scheme

Returns

Type
Description
DesignerSettings
Designer settings DesignerSettings
public abstract ActivityTimeout GetExecutionTimeout(TSchemeMedium schemeMedium) #
Gets execution timeout for activity

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}

Returns

Type
Description
ActivityTimeout
Execution timeout ActivityTimeout
public abstract ActivityTimeout GetIdleTimeout(TSchemeMedium schemeMedium) #
Gets idle timeout for activity

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}

Returns

Type
Description
ActivityTimeout
Idle timeout ActivityTimeout
public abstract List<ActivityExceptionsHandler> GetExceptionsHandlers(TSchemeMedium schemeMedium) #
Gets exceptions handler for activity

Parameters

Name
Type
Description
schemeMedium
{TSchemeMedium}

Returns

Type
Description
List<ActivityExceptionsHandler>
Exceptions handler
public abstract ProcessDefinition Parse(WorkflowRuntime workflowRuntime, string scheme, SchemeParsingType schemeParsingType = SchemeParsingType.Strict) #
Returns object model of the scheme of a process

Parameters

Name
Type
Description
workflowRuntime
WorkflowRuntime
scheme
String
String representation of not parsed sheme
schemeParsingType
SchemeParsingType

Returns

Type
Description
ProcessDefinition
ProcessDefinition object
public abstract TSchemeMedium SerializeToSchemeMedium(ProcessDefinition processDefinition) #
Serializes object model of the scheme to not parsed scheme

Parameters

Name
Type
Description
processDefinition
ProcessDefinition
ProcessDefinition object

Returns

Type
Description
{TSchemeMedium}
Not parsed scheme
public virtual string SerializeToString(ProcessDefinition processDefinition) #
Serializes object model of the scheme to string

Parameters

Name
Type
Description
processDefinition
ProcessDefinition
ProcessDefinition object

Returns

Type
Description
String
String representation of not parsed scheme
public ProcessDefinition Parse(WorkflowRuntime workflowRuntime, TSchemeMedium schemeMedium, SchemeParsingType schemeParsingType = SchemeParsingType.Strict) #
Returns object model of the scheme of a process

Parameters

Name
Type
Description
workflowRuntime
WorkflowRuntime
schemeMedium
{TSchemeMedium}
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