Class ProcessDefinition
Represents object model of a scheme of a process
Inheritance
↳ object
↳ BaseDefinition
↳ ProcessDefinition
Inherited Members
BaseDefinition.Name
BaseDefinition.DesignerSettings
Equals(object)
Equals(object, object)
GetHashCode()
GetType()
ReferenceEquals(object, object)
ToString()
Namespace: OptimaJet.Workflow.Core.Model
Assembly: OptimaJet.Workflow.Core.dll
Syntaxpublic sealed class ProcessDefinition : BaseDefinition
Constructors
ProcessDefinition()
Declarationpublic ProcessDefinition()
Properties
CodeActionsInvoker
Code action invoker with compiled code actions
Declaration[JsonIgnore]
public CodeActionsInvoker CodeActionsInvoker { get; }
Property valueType | Description |
---|
CodeActionsInvoker | |
ExpressionsInvoker
Expressions invoker
Declaration[JsonIgnore]
public ExpressionsInvoker ExpressionsInvoker { get; }
Property valueType | Description |
---|
ExpressionsInvoker | |
SubprocessNameGetterInvoker
Subprocess name getter invoker
Declaration[JsonIgnore]
public SubprocessNameGetterInvoker SubprocessNameGetterInvoker { get; }
Property valueType | Description |
---|
SubprocessNameGetterInvoker | |
ExpressionManager
Expression manager
Declaration[JsonIgnore]
public ExpressionManager ExpressionManager { get; }
Property valueType | Description |
---|
ExpressionManager | |
Actors
List of actors ActorDefinition
Declarationpublic List<ActorDefinition> Actors { get; set; }
Property valueType | Description |
---|
List<ActorDefinition> | |
Parameters
List of parameters ParameterDefinition
Declarationpublic List<ParameterDefinition> Parameters { get; set; }
Property valueType | Description |
---|
List<ParameterDefinition> | |
Commands
List of commands CommandDefinition
Declarationpublic List<CommandDefinition> Commands { get; set; }
Property valueType | Description |
---|
List<CommandDefinition> | |
Timers
List of timers TimerDefinition
Declarationpublic List<TimerDefinition> Timers { get; set; }
Property valueType | Description |
---|
List<TimerDefinition> | |
List of comments CommentDefinition
Declarationpublic List<CommentDefinition> Comments { get; set; }
Property valueType | Description |
---|
List<CommentDefinition> | |
Activities
List of activities ActivityDefinition
Declarationpublic List<ActivityDefinition> Activities { get; set; }
Property valueType | Description |
---|
List<ActivityDefinition> | |
Transitions
List of transitions TransitionDefinition
Declarationpublic List<TransitionDefinition> Transitions { get; set; }
Property valueType | Description |
---|
List<TransitionDefinition> | |
Localization
List of localization items Translation
Declarationpublic Localization Localization { get; set; }
Property valueType | Description |
---|
Localization | |
Localizer
Provides localized strings. For search used ProcessDefinition.Localization property.
Declarationpublic Localizer Localizer { get; }
Property valueCodeActions
List of code actions CodeActionDefinition
Declarationpublic List<CodeActionDefinition> CodeActions { get; set; }
Property valueType | Description |
---|
List<CodeActionDefinition> | |
CodeActionsCommonUsings
List of common usings separated by ;
Declarationpublic string CodeActionsCommonUsings { get; set; }
Property valueAdditionalParams
Additional parameters used by Workflow Designer
Declarationpublic Dictionary<string, object> AdditionalParams { get; set; }
Property valueType | Description |
---|
Dictionary<string, object> | |
CanBeInlined
The flag indicates that this scheme can be inlined into other schemes
Declarationpublic bool CanBeInlined { get; set; }
Property valueLogEnabled
The flag indicates that this scheme will be logging after create ProcessInstance
Declarationpublic bool LogEnabled { get; set; }
Property valueInlinedSchemes
The property contains inlined schemes are used in this scheme
Declarationpublic List<string> InlinedSchemes { get; }
Property valueType | Description |
---|
List<string> | |
StartingTransition
Declarationpublic string StartingTransition { get; set; }
Property valueThe property contains tags that mark the scheme
Declarationpublic List<string> Tags { get; }
Property valueType | Description |
---|
List<string> | |
ContainsSubprocesses
Returns true if the scheme contains subprocesses
Declaration[JsonIgnore]
public bool ContainsSubprocesses { get; }
Property valueInitialActivity
Returns initial activity of the scheme
Declaration[JsonIgnore]
public ActivityDefinition InitialActivity { get; }
Property valueType | Description |
---|
ActivityDefinition | |
ParametersForSerialize
Returns all parameter definitions except system ParameterDefinition.Purpose
Declarationpublic ParameterDefinition[] ParametersForSerialize { get; }
Property valueType | Description |
---|
OptimaJet.Workflow.Core.Model.ParameterDefinition[] | |
PersistenceParameters
Returns all persisted parameter definitions ParameterDefinition.Purpose
Declarationpublic IEnumerable<ParameterDefinition> PersistenceParameters { get; }
Property valueType | Description |
---|
IEnumerable<ParameterDefinition> | |
ActorsForSerialize
Returns all parameter definitions except system ParameterDefinition.Purpose
Declarationpublic ActorDefinition[] ActorsForSerialize { get; }
Property valueType | Description |
---|
OptimaJet.Workflow.Core.Model.ActorDefinition[] | |
Declarationpublic string DefiningParametersString { get; set; }
Property valueRootSchemeCode
Declarationpublic string RootSchemeCode { get; set; }
Property valueRootSchemeId
Declarationpublic Guid? RootSchemeId { get; set; }
Property valueIsObsolete
Declarationpublic bool IsObsolete { get; set; }
Property valueDeclarationpublic Guid Id { get; set; }
Property valueIsSubprocessScheme
Declarationpublic bool IsSubprocessScheme { get; }
Property valueAllowedActivities
Declarationpublic List<string> AllowedActivities { get; set; }
Property valueType | Description |
---|
List<string> | |
CalendarName
Declarationpublic string CalendarName { get; set; }
Property valueMethods
Create ProcessDefinition object
Declarationpublic static ProcessDefinition Create(string name, bool canBeInlined, List<ActorDefinition> actors, List<ParameterDefinition> parameters, List<CommandDefinition> commands, List<TimerDefinition> timers, List<ActivityDefinition> activities, List<TransitionDefinition> transitions, List<Translation> localization, List<CodeActionDefinition> codeActions, DesignerSettings designerSettings, List<string> tags, bool logEnabled = false, string commonUsings = null, List<CommentDefinition> comments = null, string calendarName = null)
ParametersType | Name | Description |
---|
string | name | Name of the scheme |
bool | canBeInlined | Sign that the scheme can be inlined into another schemes |
List<ActorDefinition> | actors | List of actors <xref href="OptimaJet.Workflow.Core.Model.ActorDefinition" data-throw-if-not-resolved="false"></xref> |
List<ParameterDefinition> | parameters | List of parameters <xref href="OptimaJet.Workflow.Core.Model.ParameterDefinition" data-throw-if-not-resolved="false"></xref> |
List<CommandDefinition> | commands | List of commands <xref href="OptimaJet.Workflow.Core.Model.CommandDefinition" data-throw-if-not-resolved="false"></xref> |
List<TimerDefinition> | timers | List of timers <xref href="OptimaJet.Workflow.Core.Model.TimerDefinition" data-throw-if-not-resolved="false"></xref> |
List<ActivityDefinition> | activities | List of activities <xref href="OptimaJet.Workflow.Core.Model.ActivityDefinition" data-throw-if-not-resolved="false"></xref> |
List<TransitionDefinition> | transitions | List of transitions <xref href="OptimaJet.Workflow.Core.Model.TransitionDefinition" data-throw-if-not-resolved="false"></xref> |
List<Translation> | localization | List of localization items <xref href="OptimaJet.Workflow.Core.Model.Translation" data-throw-if-not-resolved="false"></xref> |
List<CodeActionDefinition> | codeActions | List of code actions <xref href="OptimaJet.Workflow.Core.Model.CodeActionDefinition" data-throw-if-not-resolved="false"></xref> |
DesignerSettings | designerSettings | Designer settings |
List<string> | tags | scheme tags |
bool | logEnabled | Sign that the <xref href="OptimaJet.Workflow.Core.Model.ProcessInstance" data-throw-if-not-resolved="false"></xref> will be logging after create |
string | commonUsings | List of common usings separated by ; |
List<CommentDefinition> | comments | List of comments <xref href="OptimaJet.Workflow.Core.Model.CommentDefinition" data-throw-if-not-resolved="false"></xref> |
string | calendarName | Work calendar name |
ReturnsType | Description |
---|
ProcessDefinition | ProcessDefinition object |
FindActivity(string)
Returns activity with specific name
Declarationpublic ActivityDefinition FindActivity(string activityName)
ParametersType | Name | Description |
---|
string | activityName | Name of the activity <see cref="!:ActivityDefinition.Name"></see> |
ReturnsType | Description |
---|
ActivityDefinition | ActivityDefinition object |
FindSetStateActivity(string)
Returns activity with specific state name and possibility to set the state
Declarationpublic ActivityDefinition FindSetStateActivity(string stateName)
ParametersType | Name | Description |
---|
string | stateName | Name of the state |
ReturnsType | Description |
---|
ActivityDefinition | ActivityDefinition object |
FindCommand(string)
Returns command with specific name
Declarationpublic CommandDefinition FindCommand(string name)
ParametersType | Name | Description |
---|
string | name | Name of the command <see cref="!:CommandDefinition.Name"></see> |
ReturnsType | Description |
---|
CommandDefinition | CommandDefinition object |
FindActor(string)
Returns actor with specific name
Declarationpublic ActorDefinition FindActor(string name)
ParametersType | Name | Description |
---|
string | name | Name of the actor <see cref="!:ActorDefinition.Name"></see> |
ReturnsType | Description |
---|
ActorDefinition | ActorDefinition object |
FindParameterDefinition(string)
Returns the parameter specific name
Declarationpublic ParameterDefinition FindParameterDefinition(string name)
ParametersType | Name | Description |
---|
string | name | Name of the parameter <see cref="!:ParameterDefinition.Name"></see> |
ReturnsType | Description |
---|
ParameterDefinition | ParameterDefinition object |
FindTransition(string)
Returns transition with specific name
Declarationpublic TransitionDefinition FindTransition(string name)
ParametersType | Name | Description |
---|
string | name | Name of the transition <see cref="!:TransitionDefinition.Name"></see> |
ReturnsType | Description |
---|
TransitionDefinition | TransitionDefinition object |
FindTransitions(ActivityDefinition, ActivityDefinition)
Returns transitions linked by specified activities
Declarationpublic List<TransitionDefinition> FindTransitions(ActivityDefinition from, ActivityDefinition to)
ParametersType | Name | Description |
---|
ActivityDefinition | from | From activity <xref href="OptimaJet.Workflow.Core.Model.TransitionDefinition.From" data-throw-if-not-resolved="false"></xref> |
ActivityDefinition | to | To activity <xref href="OptimaJet.Workflow.Core.Model.TransitionDefinition.To" data-throw-if-not-resolved="false"></xref> |
ReturnsType | Description |
---|
List<TransitionDefinition> | List of TransitionDefinition objects |
GetPossibleTransitionsForActivity(ActivityDefinition, ForkTransitionSearchType)
Returns the list of all outgoing transitions for specific activity
Declarationpublic IEnumerable<TransitionDefinition> GetPossibleTransitionsForActivity(ActivityDefinition activity, ForkTransitionSearchType forkTransitionSearch = ForkTransitionSearchType.NotFork)
ParametersType | Name | Description |
---|
ActivityDefinition | activity | Activity definition |
ForkTransitionSearchType | forkTransitionSearch | Search filter for fork transitions |
ReturnsType | Description |
---|
IEnumerable<TransitionDefinition> | List of all outgoing transitions |
GetCommandTransitions(ActivityDefinition, ForkTransitionSearchType)
Returns the list of all outgoing command transitions for specific activity TriggerType.Command
Declarationpublic IEnumerable<TransitionDefinition> GetCommandTransitions(ActivityDefinition activity, ForkTransitionSearchType forkTransitionSearch = ForkTransitionSearchType.NotFork)
ParametersType | Name | Description |
---|
ActivityDefinition | activity | Activity definition |
ForkTransitionSearchType | forkTransitionSearch | Search filter for fork transitions |
ReturnsType | Description |
---|
IEnumerable<TransitionDefinition> | List of all outgoing command transitions |
GetAutoTransitionForActivity(ActivityDefinition, ForkTransitionSearchType)
Returns the list of all outgoing auto transitions for specific activity TriggerType.Auto
Declarationpublic IEnumerable<TransitionDefinition> GetAutoTransitionForActivity(ActivityDefinition activity, ForkTransitionSearchType forkTransitionSearch = ForkTransitionSearchType.NotFork)
ParametersType | Name | Description |
---|
ActivityDefinition | activity | Activity definition |
ForkTransitionSearchType | forkTransitionSearch | Search filter for fork transitions |
ReturnsType | Description |
---|
IEnumerable<TransitionDefinition> | List of all outgoing auto transitions |
GetCommandTransitionForActivity(ActivityDefinition, string, ForkTransitionSearchType)
Returns the list of all outgoing command transitions for specific activity TriggerType.Command whis specific command name !:CommandDefinition.Name
Declarationpublic IEnumerable<TransitionDefinition> GetCommandTransitionForActivity(ActivityDefinition activity, string commandName, ForkTransitionSearchType forkTransitionSearch = ForkTransitionSearchType.NotFork)
ParametersType | Name | Description |
---|
ActivityDefinition | activity | Activity definition |
string | commandName | Name of the command |
ForkTransitionSearchType | forkTransitionSearch | Search filter for fork transitions |
ReturnsType | Description |
---|
IEnumerable<TransitionDefinition> | List of all outgoing command transitions whis specific command name |
GetTimerTransitionForActivity(ActivityDefinition, ForkTransitionSearchType)
Returns the list of all outgoing timer transitions for specific activity TriggerType.Timer
Declarationpublic IEnumerable<TransitionDefinition> GetTimerTransitionForActivity(ActivityDefinition activity, ForkTransitionSearchType forkTransitionSearch = ForkTransitionSearchType.NotFork)
ParametersType | Name | Description |
---|
ActivityDefinition | activity | Activity definition |
ForkTransitionSearchType | forkTransitionSearch | Search filter for fork transitions |
ReturnsType | Description |
---|
IEnumerable<TransitionDefinition> | List of all outgoing timer transitions |
GetLocalizedStateName(string, CultureInfo)
Returns localized state name in specific culture
Declarationpublic string GetLocalizedStateName(string name, CultureInfo culture = null)
ParametersType | Name | Description |
---|
string | name | System state name |
CultureInfo | culture | Desired culture. If null then used <xref href="System.Globalization.CultureInfo.CurrentCulture" data-throw-if-not-resolved="false"></xref> |
ReturnsType | Description |
---|
string | Localized state name if exists, else input <code data-dev-comment-type="paramref" class="paramref">name</code> |
GetLocalizedCommandName(string, CultureInfo)
Returns localized command name in specific culture
Declarationpublic string GetLocalizedCommandName(string name, CultureInfo culture = null)
ParametersType | Name | Description |
---|
string | name | System command name |
CultureInfo | culture | Desired culture. If null then used <xref href="System.Globalization.CultureInfo.CurrentCulture" data-throw-if-not-resolved="false"></xref> |
ReturnsType | Description |
---|
string | Localized command name if exists, else input <code data-dev-comment-type="paramref" class="paramref">name</code> |
GetLocalizedParameterName(string, CultureInfo)
Returns localized parameter name in specific culture
Declarationpublic string GetLocalizedParameterName(string name, CultureInfo culture = null)
ParametersType | Name | Description |
---|
string | name | System parameter name |
CultureInfo | culture | Desired culture. If null then used <xref href="System.Globalization.CultureInfo.CurrentCulture" data-throw-if-not-resolved="false"></xref> |
ReturnsType | Description |
---|
string | Localized parameter name if exists, else input <code data-dev-comment-type="paramref" class="paramref">name</code> |
GetLocalizedActionName(string, CultureInfo)
Returns localized action name in specific culture
Declarationpublic string GetLocalizedActionName(string name, CultureInfo culture = null)
ParametersType | Name | Description |
---|
string | name | System action name |
CultureInfo | culture | Desired culture. If null then used <xref href="System.Globalization.CultureInfo.CurrentCulture" data-throw-if-not-resolved="false"></xref> |
ReturnsType | Description |
---|
string | Localized action name if exists, else input <code data-dev-comment-type="paramref" class="paramref">name</code> |
GetLocalizedConditionName(string, CultureInfo)
Returns localized condition name in specific culture
Declarationpublic string GetLocalizedConditionName(string name, CultureInfo culture = null)
ParametersType | Name | Description |
---|
string | name | System condition name |
CultureInfo | culture | Desired culture. If null then used <xref href="System.Globalization.CultureInfo.CurrentCulture" data-throw-if-not-resolved="false"></xref> |
ReturnsType | Description |
---|
string | Localized condition name if exists, else input <code data-dev-comment-type="paramref" class="paramref">name</code> |
GetLocalizedSchemeName(CultureInfo)
Returns localized scheme name in specific culture
Declarationpublic string GetLocalizedSchemeName(CultureInfo culture = null)
ParametersType | Name | Description |
---|
CultureInfo | culture | Desired culture. If null then used <xref href="System.Globalization.CultureInfo.CurrentCulture" data-throw-if-not-resolved="false"></xref> |
ReturnsType | Description |
---|
string | Localized scheme name if exists, else just <see cref="!:ProcessDefinition.Name"></see> |
Returns localized comment in specific culture
Declarationpublic string GetLocalizedComment(string key, CultureInfo culture = null)
ParametersType | Name | Description |
---|
string | key | Key for search localized comment |
CultureInfo | culture | Desired culture. If null then used <xref href="System.Globalization.CultureInfo.CurrentCulture" data-throw-if-not-resolved="false"></xref> |
ReturnsType | Description |
---|
string | Localized value if exists, else input <code data-dev-comment-type="paramref" class="paramref">key</code> |
Clone()
Declarationpublic ProcessDefinition Clone()
ReturnsType | Description |
---|
ProcessDefinition | |
Clone(bool, bool, bool)
Clones ProcessDefinition object
Declarationpublic ProcessDefinition Clone(bool doNotCloneActivities, bool doNotCloneTransitions, bool doNotCloneCodeActions)
ParametersType | Name | Description |
---|
bool | doNotCloneActivities | If True activity list will be empty after cloning |
bool | doNotCloneTransitions | If True transition list will be empty after cloning |
bool | doNotCloneCodeActions | If True code actions list will be empty after cloning |
ReturnsType | Description |
---|
ProcessDefinition | Cloned ProcessDefinition object |
GetSchemeCodeForActionCall()
Returns the code of the scheme from which the actions are called. For a subprocess it will be RootSchemeCode for root (ordinary) process it will be Name
Declarationpublic string GetSchemeCodeForActionCall()
ReturnsSerialize()
Declarationpublic string Serialize()
ReturnsSerializeToXElement()
Declarationpublic XElement SerializeToXElement()
ReturnsGetActivityAnnotation<T>(string, string)
Get an annotation of an activity
Declarationpublic T GetActivityAnnotation<T>(string activityName, string name)
ParametersType | Name | Description |
---|
string | activityName | Activity name |
string | name | Annotation name |
ReturnsType | Description |
---|
{T} | Annotation value |
GetActivityAnnotation(string, string)
Get a JSON representation of annotation's value of an activity
Declarationpublic string GetActivityAnnotation(string activityName, string name)
ParametersType | Name | Description |
---|
string | activityName | Activity name |
string | name | Annotation name |
ReturnsType | Description |
---|
string | JSON representation of annotation's value |
GetTransitionAnnotation<T>(string, string)
Get an annotation of a transition
Declarationpublic T GetTransitionAnnotation<T>(string transitionName, string name)
ParametersType | Name | Description |
---|
string | transitionName | Transition name |
string | name | Annotation name |
ReturnsType | Description |
---|
{T} | Annotation value |
GetTransitionAnnotation(string, string)
Get a JSON representation of annotation's value of a transition
Declarationpublic string GetTransitionAnnotation(string transitionName, string name)
ParametersType | Name | Description |
---|
string | transitionName | Transition name |
string | name | Annotation name |
ReturnsType | Description |
---|
string | JSON representation of annotation's value |
Extension Methods