Class Reference
IRIS for UNIX 2019.2
InterSystems: The power behind what matters   
Documentation  Search
  [ENSLIB] >  [Ens] >  [Rule] >  [Router] >  [Rule]
Private  Storage   

persistent class Ens.Rule.Router.Rule extends %Persistent, %XML.Adaptor

Defines a message routing action with RoutingRule set.

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
1 10 1 1


Summary

Properties
Actions Conditions Disabled DocCategory DocName
DocType MsgClass RuleNo RuleSet Source

Methods
%AddToSaveSet %AddToSyncSet %BMEBuilt %CheckConstraints
%CheckConstraintsForExtent %ClassIsLatestVersion %ClassName %ComposeOid
%ConstructClone %Delete %DeleteExtent %DeleteId
%DispatchClassMethod %DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty %Exists
%ExistsId %Extends %GUID %GUIDSet
%GetLock %GetParameter %GetSwizzleObject %Id
%InsertBatch %IsA %IsModified %IsNull
%KillExtent %KillExtentData %LoadFromMemory %LockExtent
%LockId %New %NormalizeObject %ObjectIsNull
%ObjectModified %Oid %OnBeforeAddToSync %OnDetermineClass
%Open %OpenId %OriginalNamespace %PackageName
%PhysicalAddress %PurgeIndices %Reload %RemoveFromSaveSet
%ResolveConcurrencyConflict %RollBack %Save %SaveDirect
%SaveIndices %SerializeObject %SetModified %SortBegin
%SortEnd %SyncObjectIn %SyncTransport %UnlockExtent
%UnlockId %ValidateIndices %ValidateObject GenerateCode
XMLDTD XMLExport XMLExportToStream XMLExportToString
XMLNew XMLSchema XMLSchemaNamespace XMLSchemaType


Parameters

• parameter XMLIGNORENULL = 1;
Ensure that we don't get $C(0) for values that are empty strings

Properties

• relationship Actions as Ens.Rule.Router.Action(XMLNAME="action",XMLPROJECTION="ELEMENT") [ Inverse = Rule,Cardinality = children ];
Set of actions that are fired if this rule evaluates true.
• relationship Conditions as Ens.Rule.Router.Condition(XMLNAME="condition",XMLPROJECTION="ELEMENT") [ Inverse = Rule,Cardinality = children ];
Set of conditions that must evaluate true for this rule to fire.
• property Disabled as %Boolean(XMLNAME="disabled",XMLPROJECTION="attribute");
If false, then this rule is enabled; otherwise this rule is not evaluated.
• property DocCategory as %String(MAXLEN=128,XMLNAME="docCategory",XMLPROJECTION="attribute");
If defined, the message must have this document category in order to match this rule.
This is the document structure category name of a document structure name (DocType) (applies to virtual document messages only).
For example in HL7 this is a schema version, e.g. "2.3.1". If not defined, then the default value defined by the RoutingRule set is used.
• property DocName as %String(MAXLEN=2000,XMLNAME="docName",XMLPROJECTION="attribute");
If defined, the message must have this logical name in order to match this rule.
This is a comma-delimited list of document names (applies to virtual document messages only).
Each item in the list is tested against the document type name declared in the document. If not defined, then the default value defined by the RoutingRule set is used.
• property DocType as %String(MAXLEN=2000,XMLNAME="docType",XMLPROJECTION="attribute");
If defined, the message must be of this document type to match this rule.
This is the document type of a message (applies to virtual documents messages only). It indicates the structure of a message.
If not defined, then the default value defined by the RoutingRule set is used. This is a comma-delimited list of document structure types. Each item in the list can include a category name, which would override the values provided by DocCategory and the RoutingRule set's DocCategory value.
• property MsgClass as %String(MAXLEN=128,XMLNAME="msgClass",XMLPROJECTION="attribute");
If defined, message must be of this class type to match this rule. If not defined, then the default value defined by the RoutingRule set is used.
• property RuleNo as %Integer(XMLPROJECTION="none") [ InitialExpression = $I(^Ens.Rule.RuleC("RuleNo")) ];
• relationship RuleSet as Ens.Rule.Router.RoutingRule [ Inverse = Rules,Cardinality = parent ];
Parent RuleSet.
• property Source as %String(MAXLEN=128,XMLNAME="source",XMLPROJECTION="attribute");
If defined, message must be from this source to match this rule.

Methods

• method GenerateCode(pCompiler As Ens.Rule.Compiler, pRuleNo As %Integer) as %Status
Generate code for this rule.
pRuleNo gives the ordinal position of this rule within the rule set.

Indices

•index (ID on RuleNo) [IdKey];
Make sure rules are ordered correctly


Copyright (c) 2019 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.