Class XmlRuleEngineDS

java.lang.Object
com.aquima.interactions.foundation.report.ReportingDS
com.aquima.interactions.rule.ds.xml.r12.parsing.XmlRuleEngineDS
All Implemented Interfaces:
IReportingDS, IRuleEngineDS

public class XmlRuleEngineDS extends ReportingDS implements IRuleEngineDS
Xml datasource implementation.
Since:
7.3
Author:
Danny Roest
  • Constructor Details

  • Method Details

    • allowTargetDowncast

      public boolean allowTargetDowncast()
      Description copied from interface: IRuleEngineDS
      Given a rule that can source a target attribute, it uses source attributes. In KS-4.2 one can define A rule that sources Item.price while using the subtype Product in the expression. If the allowTarget upcast function is true the second case: Sourcing with Item.prijs using Product.naam will auto upcast Item.prijs to Product.prijs. This makes the the rule valid and used when product.prijs is requested.
      1. Item.prijs <= Item.naam
      2. Item.prijs <= Product.naam
      3. Product.prijs <= Item.naam
      4. Product.prijs <= Product.naam
      Specified by:
      allowTargetDowncast in interface IRuleEngineDS
      Returns:
      boolean indicating if down-casting of rules is allowed.
    • getExpressionEngineDS

      public IExpressionEngineDS getExpressionEngineDS()
      Description copied from interface: IRuleEngineDS
      This function returns the data source for the expression parser.
      Specified by:
      getExpressionEngineDS in interface IRuleEngineDS
      Returns:
      The parser data source which is mandatory.
    • getParserVersion

      public Version getParserVersion()
      Description copied from interface: IRuleEngineDS
      This method returns the version of the parser that should be used. At the moment there are two parser versions available:
      • Version 4.x and lower, which will only accept expressions in the original syntax.
      • Version 5.x or higher, which will accept most of the original syntax and several new expression constructs.
      Specified by:
      getParserVersion in interface IRuleEngineDS
      Returns:
      The version of the parser that should be used.
    • iterateConstraints

      public void iterateConstraints(IConstraintVisitor visitor)
      Description copied from interface: IRuleEngineDS
      The rule engine will invoke this method to allow the data layer to add constraints for attributes to the rule engine.
      Specified by:
      iterateConstraints in interface IRuleEngineDS
      Parameters:
      visitor - The visitor that should be used to add the constraints to.
    • iterateRuleGroups

      public void iterateRuleGroups(IRuleGroupVisitor visitor)
      Description copied from interface: IRuleEngineDS
      The rule engine will invoke this method to allow the data layer to add the rule group definitions to the rule engine.
      Specified by:
      iterateRuleGroups in interface IRuleEngineDS
      Parameters:
      visitor - The visitor that should be used to add the rule groups to.
    • iterateSources

      public void iterateSources(ISourceVisitor visitor)
      Description copied from interface: IRuleEngineDS
      The rule engine will invoke this method to allow the data layer to add to add sources for attributes to the rule engine.
      Specified by:
      iterateSources in interface IRuleEngineDS
      Parameters:
      visitor - The visitor that should be used to add the source to.
    • iterateValidations

      public void iterateValidations(IValidationVisitor visitor)
      Description copied from interface: IRuleEngineDS
      The rule engine will invoke this method to allow the data layer to add a validation rule for an attribute to the rule engine.
      Specified by:
      iterateValidations in interface IRuleEngineDS
      Parameters:
      visitor - The visitor that should be used to add the validation to.
    • addJustificationAsset

      protected void addJustificationAsset(String textId, String format, IMultilingualText text)
    • getAssets

      public XmlJustificationAsset[] getAssets()