Class EvaluationContext

  • All Implemented Interfaces:
    IEvaluationContext

    public class EvaluationContext
    extends java.lang.Object
    implements IEvaluationContext
    A default implementation of an evaluation context.

    Clients may instantiate this default context. The class is not intended to be subclassed by clients.

    Since:
    3.0
    Restriction:
    This class is not intended to be subclassed by clients.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addVariable​(java.lang.String name, java.lang.Object value)
      Adds a new named variable to this context.
      boolean getAllowPluginActivation()
      Returns whether this evaluation context supports plug-in activation.
      java.lang.Object getDefaultVariable()
      Returns the default variable.
      IEvaluationContext getParent()
      Returns the parent context or null if this is the root of the evaluation context hierarchy.
      IEvaluationContext getRoot()
      Returns the root evaluation context.
      java.lang.Object getVariable​(java.lang.String name)
      Returns the variable managed under the given name.
      java.lang.Object removeVariable​(java.lang.String name)
      Removes the variable managed under the given name from this evaluation context.
      java.lang.Object resolveVariable​(java.lang.String name, java.lang.Object[] args)
      Resolves a variable for the given name and arguments.
      void setAllowPluginActivation​(boolean value)
      Specifies whether this evaluation context allows activation of plug-ins for testers used in the expression tree.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • EvaluationContext

        public EvaluationContext​(IEvaluationContext parent,
                                 java.lang.Object defaultVariable)
        Create a new evaluation context with the given parent and default variable.
        Parameters:
        parent - the parent context. Can be null.
        defaultVariable - the default variable
      • EvaluationContext

        public EvaluationContext​(IEvaluationContext parent,
                                 java.lang.Object defaultVariable,
                                 IVariableResolver[] resolvers)
        Create a new evaluation context with the given parent and default variable.
        Parameters:
        parent - the parent context. Can be null.
        defaultVariable - the default variable
        resolvers - an array of IVariableResolvers to resolve additional variables.
        See Also:
        resolveVariable(String, Object[])
    • Method Detail

      • getDefaultVariable

        public java.lang.Object getDefaultVariable()
        Description copied from interface: IEvaluationContext
        Returns the default variable.
        Specified by:
        getDefaultVariable in interface IEvaluationContext
        Returns:
        the default variable or null if no default variable is managed.
      • setAllowPluginActivation

        public void setAllowPluginActivation​(boolean value)
        Description copied from interface: IEvaluationContext
        Specifies whether this evaluation context allows activation of plug-ins for testers used in the expression tree. To actual trigger the plug-in loading this flag has to be set to true and the actual test expression must have the attribute forcePluginActivation set to true as well.
        Specified by:
        setAllowPluginActivation in interface IEvaluationContext
        Parameters:
        value - whether this evaluation context allows plug-in activation
      • addVariable

        public void addVariable​(java.lang.String name,
                                java.lang.Object value)
        Description copied from interface: IEvaluationContext
        Adds a new named variable to this context. If a variable with the name already exists the new one overrides the existing one.
        Specified by:
        addVariable in interface IEvaluationContext
        Parameters:
        name - the variable's name
        value - the variable's value
      • removeVariable

        public java.lang.Object removeVariable​(java.lang.String name)
        Description copied from interface: IEvaluationContext
        Removes the variable managed under the given name from this evaluation context.
        Specified by:
        removeVariable in interface IEvaluationContext
        Parameters:
        name - the variable's name
        Returns:
        the currently stored value or null if the variable doesn't exist
      • getVariable

        public java.lang.Object getVariable​(java.lang.String name)
        Description copied from interface: IEvaluationContext
        Returns the variable managed under the given name.
        Specified by:
        getVariable in interface IEvaluationContext
        Parameters:
        name - the variable's name
        Returns:
        the variable's value or null if the content doesn't manage a variable with the given name
      • resolveVariable

        public java.lang.Object resolveVariable​(java.lang.String name,
                                                java.lang.Object[] args)
                                         throws CoreException
        Description copied from interface: IEvaluationContext
        Resolves a variable for the given name and arguments. This method can be used to dynamically resolve variable such as plug-in descriptors, resources, etc. The method is used by the resolve expression.
        Specified by:
        resolveVariable in interface IEvaluationContext
        Parameters:
        name - the variable to resolve
        args - an object array of arguments used to resolve the variable
        Returns:
        the variable's value or null if no variable can be resolved for the given name and arguments
        Throws:
        CoreException - if an errors occurs while resolving the variable