com.tibbo.aggregate.common.expression

## Class EvaluationEnvironment

- java.lang.Object
- - com.tibbo.aggregate.common.expression.EvaluationEnvironment

- All Implemented Interfaces:
    PinpointAware, java.lang.Cloneable

      public class EvaluationEnvironment
      extends java.lang.Object
      implements java.lang.Cloneable, PinpointAware

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `EvaluationEnvironment()`
    `EvaluationEnvironment(java.util.Map<java.lang.String,java.lang.Object> environment)`
    `EvaluationEnvironment(Reference cause)`
    `EvaluationEnvironment(Reference cause, java.util.Map<java.lang.String,java.lang.Object> environment)`
    `EvaluationEnvironment(ReferenceResolver customDefaultReferenceResolver)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addCustomDefaultResolver(ReferenceResolver resolver)` Adds a new custom default reference resolver for using within this particular environment
    `void` | `assignPinpoint(Pinpoint pinpoint)` Assigns this object with the given pinpoint
    `EvaluationEnvironment` | `clone()`
    `NodeEvaluationDetails` | `getActiveNode()`
    `Reference` | `getCause()`
    `java.util.Map<java.lang.String,ReferenceResolver>` | `getCustomResolvers()`
    `java.util.Map<java.lang.String,java.lang.Object>` | `getEnvironment()`
    `NodeEvaluationDetails` | `getRootNode()`
    `boolean` | `isDebug()`
    `java.util.Optional<Pinpoint>` | `obtainPinpoint()`
    `void` | `removePinpoint()`
    `void` | `setActiveNode(NodeEvaluationDetails ed)`
    `void` | `setCause(Reference cause)`
    `void` | `setDebug(boolean debug)`
    `void` | `setEnvironment(java.util.Map<java.lang.String,java.lang.Object> environment)`

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

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

    - ### Methods inherited from interface com.tibbo.aggregate.common.structure.PinpointAware

      `assignPinpoint`

- - ### Constructor Detail

    - #### EvaluationEnvironment

          public EvaluationEnvironment()

    - #### EvaluationEnvironment

          public EvaluationEnvironment(ReferenceResolver customDefaultReferenceResolver)

    - #### EvaluationEnvironment

          public EvaluationEnvironment(Reference cause)

    - #### EvaluationEnvironment

          public EvaluationEnvironment(java.util.Map<java.lang.String,java.lang.Object> environment)

    - #### EvaluationEnvironment

          public EvaluationEnvironment(Reference cause,
                                       java.util.Map<java.lang.String,java.lang.Object> environment)

  - ### Method Detail

    - #### getCause

          public Reference getCause()

    - #### setCause

          public void setCause(Reference cause)

    - #### getEnvironment

          public java.util.Map<java.lang.String,java.lang.Object> getEnvironment()

    - #### setEnvironment

          public void setEnvironment(java.util.Map<java.lang.String,java.lang.Object> environment)

    - #### clone

          public EvaluationEnvironment clone()

      Overrides:
        `clone` in class `java.lang.Object`

    - #### setActiveNode

          public void setActiveNode(NodeEvaluationDetails ed)

    - #### getRootNode

          public NodeEvaluationDetails getRootNode()

    - #### getActiveNode

          public NodeEvaluationDetails getActiveNode()

    - #### setDebug

          public void setDebug(boolean debug)

    - #### isDebug

          public boolean isDebug()

    - #### getCustomResolvers

          public java.util.Map<java.lang.String,ReferenceResolver> getCustomResolvers()

    - #### addCustomDefaultResolver

          public void addCustomDefaultResolver(ReferenceResolver resolver)

      Adds a new custom default reference resolver for using within this particular environment

    - #### assignPinpoint

          public void assignPinpoint(Pinpoint pinpoint)

      Description copied from interface: `PinpointAware`
      Assigns this object with the given pinpoint
      Specified by:
        `assignPinpoint` in interface `PinpointAware`
      Parameters:
        `pinpoint` - a pinpoint this object should be associated with

    - #### obtainPinpoint

          public java.util.Optional<Pinpoint> obtainPinpoint()

      Specified by:
        `obtainPinpoint` in interface `PinpointAware`

    - #### removePinpoint

          public void removePinpoint()

      Specified by:
        `removePinpoint` in interface `PinpointAware`