OCLOperators stateMachineForceMode

StateMachine Force Mode.

StateMachines follow their rules. However, when you change your model or find a bug, you may find yourself in a situation where the current state of objects is wrong, and there is no legal way to get to the correct state. For this reason, we added the StateMachineForceMode operator that is only intended to be used in the debugger or the like.

Calling object.StateMachineForceMode(theStateAttribute) gives you one free pass to set the StateAttribute string directly:

The stateMachineForceMode is only good for 1 write so this will fail on the 3 lines:

self.stateMachineForceMode('State'); 
self.State:='State3'; 
self.State:='State3' 

But this will work:

self.stateMachineForceMode('State');

self.State:='State3';

self.stateMachineForceMode('State');

self.State:='State3'

Note! The StateMachineForceMode has the name of the state attribute as the parameter, not the name of the state itself.

This is explained in more detail here.

See also: State value as a string

This page was edited 28 days ago on 06/17/2024. What links here