org.apache.commons.jexl3

## Class ObjectContext<T>

- java.lang.Object
- - org.apache.commons.jexl3.ObjectContext<T>

- Type Parameters:
    `T` - the wrapped object type to use
  All Implemented Interfaces:
    JexlContext, JexlContext.NamespaceResolver

      public class ObjectContext<T>
      extends Object
      implements JexlContext, JexlContext.NamespaceResolver

  Wraps an Object as a JEXL context and NamespaceResolver.
  Since:
    3.0

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.apache.commons.jexl3.JexlContext

      `JexlContext.AnnotationProcessor, JexlContext.CancellationHandle, JexlContext.ClassNameResolver, JexlContext.ModuleProcessor, JexlContext.NamespaceFunctor, JexlContext.NamespaceResolver, JexlContext.OptionsHandle, JexlContext.PragmaProcessor, JexlContext.ThreadLocal`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ObjectContext(JexlEngine engine, T wrapped)` Creates a new ObjectContext.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `Object` | `get(String name)` Gets the value of a variable.
    `protected JexlEngine` | `getJexl()`
    `protected T` | `getObject()`
    `boolean` | `has(String name)` Checks whether a variable is defined in this context.
    `Object` | `resolveNamespace(String name)` Resolves a namespace by its name.
    `void` | `set(String name, Object value)` Sets the value of a variable.

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

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

- - ### Constructor Detail

    - #### ObjectContext

          public ObjectContext(JexlEngine engine,
                               T wrapped)

      Creates a new ObjectContext.
      Parameters:
        `engine` - the jexl engine to use to solve properties
        `wrapped` - the object to wrap in this context

  - ### Method Detail

    - #### getJexl

          protected JexlEngine getJexl()

      Returns:
        the Jexl engine

    - #### getObject

          protected T getObject()

      Returns:
        the object exposed by this context

    - #### get

          public Object get(String name)

      Description copied from interface: `JexlContext`
      Gets the value of a variable.
      Specified by:
        `get` in interface `JexlContext`
      Parameters:
        `name` - the variable's name
      Returns:
        the value

    - #### set

          public void set(String name,
                          Object value)

      Description copied from interface: `JexlContext`
      Sets the value of a variable.
      Specified by:
        `set` in interface `JexlContext`
      Parameters:
        `name` - the variable's name
        `value` - the variable's value

    - #### has

          public boolean has(String name)

      Description copied from interface: `JexlContext`
      Checks whether a variable is defined in this context.

      A variable may be defined with a null value; this method checks whether the value is null or if the variable is undefined.

      Specified by:
        `has` in interface `JexlContext`
      Parameters:
        `name` - the variable's name
      Returns:
        true if it exists, false otherwise

    - #### resolveNamespace

          public Object resolveNamespace(String name)

      Description copied from interface: `JexlContext.NamespaceResolver`
      Resolves a namespace by its name.
      Specified by:
        `resolveNamespace` in interface `JexlContext.NamespaceResolver`
      Parameters:
        `name` - the name
      Returns:
        the namespace object

Copyright © 2001–2022 The Apache Software Foundation. All rights reserved.