# Class JexlScriptEngine.JexlScriptObject

java.lang.Object
org.apache.commons.jexl3.scripting.JexlScriptEngine.JexlScriptObject

Enclosing class:
  `JexlScriptEngine`

public class JexlScriptEngine.JexlScriptObject extends Object
Implements engine and engine context properties for use by JEXL scripts. Those properties are always bound to the default engine scope context.

The following properties are defined:

- in - refers to the engine scope reader that defaults to reading System.err
- out - refers the engine scope writer that defaults to writing in System.out
- err - refers to the engine scope writer that defaults to writing in System.err
- logger - the JexlScriptEngine logger
- System - the System.class

Since:
  2.0

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `JexlScriptObject()`
  Default constructor

- ## Method Summary

  Modifier and Type
  Method
  Description
  `JexlEngine`
  `getEngine()`
  Gives access to the underlying JEXL engine shared between all ScriptEngine instances.
  `PrintWriter`
  `getErr()`
  Gives access to the engine scope error writer (defaults to System.err).
  `Reader`
  `getIn()`
  Gives access to the engine scope input reader (defaults to System.in).
  `org.apache.commons.logging.Log`
  `getLogger()`
  Gives access to the engine logger.
  `PrintWriter`
  `getOut()`
  Gives access to the engine scope output writer (defaults to System.out).
  `Class<System>`
  `getSystem()`
  Gives access to System class.

  ### Methods inherited from class Object

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

- ## Constructor Details

  - ### JexlScriptObject

    public JexlScriptObject()
    Default constructor

- ## Method Details

  - ### getEngine

    public JexlEngine getEngine()
    Gives access to the underlying JEXL engine shared between all ScriptEngine instances.

    Although this allows to manipulate various engine flags (lenient, debug, cache...) for all JexlScriptEngine instances, you probably should only do so if you are in strict control and sole user of the JEXL scripting feature.

    Returns:
      the shared underlying JEXL engine

  - ### getErr

    public PrintWriter getErr()
    Gives access to the engine scope error writer (defaults to System.err).
    Returns:
      the engine error writer

  - ### getIn

    public Reader getIn()
    Gives access to the engine scope input reader (defaults to System.in).
    Returns:
      the engine input reader

  - ### getLogger

    public org.apache.commons.logging.Log getLogger()
    Gives access to the engine logger.
    Returns:
      the JexlScriptEngine logger

  - ### getOut

    public PrintWriter getOut()
    Gives access to the engine scope output writer (defaults to System.out).
    Returns:
      the engine output writer

  - ### getSystem

    public Class<System> getSystem()
    Gives access to System class.
    Returns:
      System.class