Class TransitionDefinition
OptimaJet.Workflow.Core.Model.TransitionDefinition
Represent a transition in a process scheme
Namespace: OptimaJet.Workflow.Core.Model
public class TransitionDefinition : BaseDefinitionInheritance
- System.Object
- BaseDefinition
Properties
Name
Type
InlinedFinalActivityName #StringFinal activity name in inlined scheme, may not be filled, then any final activity from inlined scheme will be taken
OriginalName #StringIf object was inlined, you can get its original name from this property
OriginalSchemeCode #StringThe code of the scheme to which the inlined object originally belonged.
LastTimeInlineName #StringThe name of the inline activity instead of which the object was inlined.last time
FirstTimeInlineName #StringThe name of the inline activity instead of which the object was inlined first time.
UserComment #StringCustom comment
WasInlined #BooleanReturn true if the object was inlined.
From #ActivityDefinitionSource activity
To #ActivityDefinitionDestination activity
Classifier #TransitionClassifierClassifier of the direction of the transition
Trigger #TriggerDefinitionTransition's trigger
Conditions #List<ConditionDefinition>List of conditions which are checked to execute transition
Restrictions #List<RestrictionDefinition>List of actors which are determine a user which can execute transition
AllowConcatenationType #ConcatenationTypeType of concatenation for restrictions with the type equal "Allow" RestrictionType.Allow RestrictionDefinition.Type
RestrictConcatenationType #ConcatenationTypeType of concatenation for restrictions with the type equal "Restrict" RestrictionType.Restrict RestrictionDefinition.Type
ConditionsConcatenationType #ConcatenationTypeType of concatenation for conditions
Annotations #List<Annotation>A List of Annotation attached to this transition.
HasExpressions #BooleanReturns true if the transition has expressions
IsFork #BooleanReturns true if Transition initialized or finalized a fork (split, parallel branch). Fork transition is the initial or final transition of a subprocess
MergeViaSetState #BooleanReturns true if after a subprocess will be merged with a parent process new state of a parent process will be set forcibly
DisableParentStateControl #BooleanApplied if transition is fork. False - mean that subprocess will be dropped if parent process turned up in a state where subprocess can not exist. True - mean that subprocess control is responsibility of a developer.
SubprocessStartupType #SubprocessStartupTypeDefines how the subprocess starts
SubprocessInOutDefinition #SubprocessInOutDefinitionDefines if the transition is start or final
SubprocessName #StringSubprocess custom name
SubprocessId #StringSubprocess identifier (must be GUID) or expression to get the subprocess identifier from parameters
SubprocessStartupParameterCopyStrategy #SubprocessStartupParameterCopyStrategyDetermines how parameters from the parent process are passed to the subprocess at startup
SubprocessFinalizeParameterMergeStrategy #SubprocessFinalizeParameterMergeStrategyDetermines how parameters from a subprocess are passed to the parent process when final merge
SubprocessSpecifiedParameters #StringA list of parameters that are either passed or not passed to or from a subprocess (see SubprocessStartupParameterCopyStrategy or SubprocessFinalizeParameterMergeStrategy
SubprocessSpecifiedParametersList #List<String>IsAlwaysTransition #BooleanReturns true if condition type of the transition is equal "Always" ConditionType.Always
IsOtherwiseTransition #BooleanReturns true if condition type of the transition is equal "Otherwise" ConditionType.Otherwise
IsConditionTransition #BooleanReturns true if condition type of the transition is equal "Action" ConditionType.Action
ForkType #TransitionForkTypeReturns type of fork transition TransitionForkType
Methods
public TransitionDefinition SetSubprocessSettings(string subprocessName, string subprocessId, bool mergeViaSetState, bool disableParentStateControl, SubprocessInOutDefinition inOutDefinition, SubprocessStartupType startupType, SubprocessStartupParameterCopyStrategy startupParameterCopyStrategy, SubprocessFinalizeParameterMergeStrategy finalizeParameterMergeStrategy, string subprocessSpecifiedParameters) #Sets subprocess specific parameters
Parameters
Name
Type
Description
subprocessNameStringSubprocess name or expression in order to calculate subprocess name
subprocessIdStringSubprocess identifier (must be GUID) or expression to get the subprocess identifier from parameters
mergeViaSetStateBooleanReturns true if after a subprocess will be merged with a parent process new state of a parent process will be set forcibly
disableParentStateControlBooleanApplied if transition is fork. False - mean that subprocess will be dropped if parent process turned up in a state where subprocess can not exist. True - mean that subprocess control is responsibility of a developer
inOutDefinitionSubprocessInOutDefinitionDefines if the transition is start or final
startupTypeSubprocessStartupTypeDefines how the subprocess starts
startupParameterCopyStrategySubprocessStartupParameterCopyStrategyDetermines how parameters from the parent process are passed to the subprocess at startup
finalizeParameterMergeStrategySubprocessFinalizeParameterMergeStrategyDetermines how parameters from a subprocess are passed to the parent process when final merge
subprocessSpecifiedParametersStringA list of parameters that are either passed or not passed to or from a subprocess (see SubprocessStartupParameterCopyStrategy or SubprocessFinalizeParameterMergeStrategy
Returns
Type
Description
TransitionDefinitionpublic static TransitionDefinition Create(ActivityDefinition from, ActivityDefinition to) #Create TransitionDefinition object with NotSpecified classifier, Always condition, Auto trigger
Parameters
Name
Type
Description
fromActivityDefinitionSource activity
toActivityDefinitionDestination activity
Returns
Type
Description
TransitionDefinitionTransitionDefinition object
public void AddRestriction(RestrictionDefinition restriction) #Add restriction to restrictions list
Parameters
Name
Type
Description
restrictionRestrictionDefinitionRestrictionDefinition object
public TransitionDefinition Clone() #Returns
Type
Description
TransitionDefinitionpublic TransitionDefinition Clone(List<ActorDefinition> actorDefinitions, List<CommandDefinition> commandDefinitions, List<ActivityDefinition> activityDefinitions, List<TimerDefinition> timerDefinitions) #Clones TransitionDefinition object replacing references to the references to the specific objects
Parameters
Name
Type
Description
actorDefinitionsList<ActorDefinition>List of the actors to replace
commandDefinitionsList<CommandDefinition>List of the commands to replace
activityDefinitionsList<ActivityDefinition>List of the activities to replace
timerDefinitionsList<TimerDefinition>List of the timers to replace
Returns
Type
Description
TransitionDefinitionCloned TransitionDefinition object
public T GetAnnotation<T>(string name) #Get an annotation attached to this transition
Parameters
Name
Type
Description
nameStringAnnotation's name
Returns
Type
Description
{T}Annotation value
public string GetAnnotation(string name) #Get a JSON representation of annotation's value
Parameters
Name
Type
Description
nameStringAnnotation's name
Returns
Type
Description
StringJSON representation of annotation's value