# Class MapContext

java.lang.Object
org.apache.commons.jexl3.MapContext

All Implemented Interfaces:
  `JexlContext`

public class MapContext extends Object implements JexlContext
Wraps a map in a context.

Each entry in the map is considered a variable name, value pair.

- ## Nested Class Summary

  ### Nested classes/interfaces inherited from interface JexlContext

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

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `MapContext()`
  Creates a MapContext on an automatically allocated underlying HashMap.
  `MapContext(Map<String,Object> vars)`
  Creates a MapContext wrapping an existing user provided map.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `clear()`
  Clears all variables.
  `Object`
  `get(String name)`
  Gets the value of a variable.
  `boolean`
  `has(String name)`
  Checks whether a variable is defined in this context.
  `void`
  `set(String name, Object value)`
  Sets the value of a variable.

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### MapContext

    public MapContext()
    Creates a MapContext on an automatically allocated underlying HashMap.

  - ### MapContext

    public MapContext(Map<String,Object> vars)
    Creates a MapContext wrapping an existing user provided map.
    Parameters:
      `vars` - the variable map

- ## Method Details

  - ### clear

    public void clear()
    Clears all variables.

  - ### 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.

  - ### 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.

  - ### 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.