com.tibbo.aggregate.common.context.loader

## Class ExpressionContextValidator

- java.lang.Object
- - com.tibbo.aggregate.common.context.loader.ExpressionContextValidator

- All Implemented Interfaces:
    ContextValidator
  Direct Known Subclasses:
    SmartFilterExpressionValidator

      @Immutable
      public class ExpressionContextValidator
      extends java.lang.Object
      implements ContextValidator

  Validator which will accept the context if it matches the expression provided
  Since:
    01.04.2023
  See Also:
    AGG-14058

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected CallerController` | `caller`
    `protected ContextManager` | `contextManager`
    `protected Reference` | `reference`
    `protected Expression` | `validityExpression`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ExpressionContextValidator(ContextManager contextManager, CallerController caller, Expression validityExpression, Reference reference)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected boolean` | `evaluate(java.lang.String contextPath, Context context, Evaluator evaluator)`
    `protected DataTable` | `getDefaultTable(Context context)`
    `boolean` | `validate(java.lang.String contextPath)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### contextManager

          protected final ContextManager contextManager

    - #### caller

          protected final CallerController caller

    - #### validityExpression

          protected final Expression validityExpression

    - #### reference

          protected final Reference reference

  - ### Constructor Detail

    - #### ExpressionContextValidator

          public ExpressionContextValidator(@Nonnull
                                            ContextManager contextManager,
                                            @Nonnull
                                            CallerController caller,
                                            @Nonnull
                                            Expression validityExpression,
                                            @Nonnull
                                            Reference reference)

  - ### Method Detail

    - #### getDefaultTable

          protected DataTable getDefaultTable(Context context)
                                       throws ContextException

      Throws:
        `ContextException`

    - #### validate

          public boolean validate(java.lang.String contextPath)

      Specified by:
        `validate` in interface `ContextValidator`

    - #### evaluate

          protected boolean evaluate(java.lang.String contextPath,
                                     Context context,
                                     Evaluator evaluator)