persistent class EnsLib.MsgRouter.VDocRoutingEngine
extends EnsLib.MsgRouter.RoutingEngine
This is a Business Process class.
parameter SETTINGS = "Validation:Basic";
List of properties can be set as settings in the configuration file
format is a comma separated list of property names
property DocName
as %String(MAXLEN="") [ Transient ];
property DocType
as %String(MAXLEN=128) [ Transient ];
property Validation
as %String(MAXLEN=20) [ InitialExpression = "m",Transient ];
String specifying types of Validation to perform
Set to 1 to block documents that don't pass default validation. Default validation checks for DocType assignment and successful BuildMapStatus.
This is equivalent to 'dm'
'd' - require DocType
'm' - require successful BuildMap status
classmethod GetRequestClassList()
as %String
classmethod GetResponseClassList(pRequest As %String = "")
as %String
method OnConstructReply(Output pReplyDoc As Ens.VDoc.Interface, pOriginalDoc As Ens.VDoc.Interface, ByRef pSC As %Status)
as %Status
Override this method to construct a customized reply document. Inputs are the original document and
the status code that the framework produced in processing the original document.
If you change the status code but do not construct a reply document, the framework will use the new value to construct a standard reply document.
method OnPrepareReply(request As %Persistent, ByRef response As %Persistent)
method OnRequest(request As %Persistent, Output response As %Persistent)
as %Status
Handle a 'Request'
method OnValidate(pDoc As %Persistent, pValSpec As %String, Output pStatus As %Status = $$$OK)
as %Boolean
Override this method to implement your own method for validating a Document
Return non-zero to prevent default validation of the message(if any);
return an error code in pStatus to indicate a validation failure.