Skip to main content


abstract class EnsLib.InteropTools.HL7.MessageAnalyzer.NFA.Control.ControlBase extends %Library.RegisteredObject

Method Inventory


method %OnNew(pMachine As Machine, pStartElement As %String, pConfig As Config, pLogger As Logger, pEnableBacktracking As %Boolean = 1) as %Status
Inherited description: This callback method is invoked by the %New() method to provide notification that a new instance of an object is being created.

If this method returns an error then the object will not be created.

It is passed the arguments provided in the %New call. When customizing this method, override the arguments with whatever variables and types you expect to receive from %New(). For example, if you're going to call %New, passing 2 arguments, %OnNew's signature could be:

Method %OnNew(dob as %Date = "", name as %Name = "") as %Status If instead of returning a %Status code this returns an oref and this oref is a subclass of the current class then this oref will be the one returned to the caller of %New method.

abstract method ChooseBranch() as %Integer
Select a branch to process next and return its index
final method GetElement(pElementName As %String)
Callback API: return the element with the given name - or "" if passed ""
final method GetEnableBacktracking() as %Boolean
final method GetReportCount() as %Integer
final method GetReports(pReportIndex As %Integer) as %List
abstract method OnCycle(pElement As ElementBase, pMSR As MessageSegmentReader, pDiffRecords As Diff) as %Boolean
Called before each Branch cycle: return 0 to abort the branch, 1 to continue
abstract method OnExit()
Action on EXIT
abstract method OnFail(pBranchIndex As %Integer, pOutcome As OutcomeBase)
Action on FAIL
abstract method OnSink(pBranchIndex As %Integer)
Action on SINK
abstract method OnSucc(pBranchIndex As %Integer, pOutcome As OutcomeBase)
Action on SUCC
method RunControl(pStartAtElement As %String, pMSR As MessageSegmentReader, Output pResult As %List, Output pFailureOutcome As FailureOutcome)
Returns $LB(anysucc,furthestreport,$LB(summary1,summary2,..),message->schema xref)

pStartAtElement can be omitted or "", defaulting to the StartElement property

Inherited Members

Inherited Methods


FeedbackOpens in a new tab