Uploaded image for project: 'Imperius'
  1. Imperius
  2. IMPERIUS-4

PrimaryExpression does not lookup instances (imports) when validating the expression

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None

    Description

      I have this code:

      Import Class org.eclipse.hyades.logging.events.cbe.CommonBaseEvent:event;
      ...
      Policy
      {
      ...
      Decision
      {
      RaiseAlarm(event,"alarmname",...)
      }

      When the Policy is evaluated, the RaiseAlarm action is created with a [null,"alarmname",...].

      An initial analysis demonstrates that Import variables (event) are not considered by the PrimaryExpression, so it throws an SPLException and when the compilation/evaluation of the Decision Block occurs, the expression is actually null.

      To change this situation, I've changed the PrimaryExpression.validate and PrimaryExpression.evaluate methods.

      In the changed PrimaryExpression validate and evaluate method, I first check for an existing symbol, via symbolExists and if it does, work with it, otherwise try getInstance, and if none of these exists throw symbol does not exist

      Attachments

        1. IMPERIUS_4.patch
          3 kB
          Erik Bengtson

        Activity

          People

            stoddard@apache.org Bill Stoddard
            ebengtso Erik Bengtson
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: