# Class JexlSandbox.Permissions

java.lang.Object
org.apache.commons.jexl3.introspection.JexlSandbox.Permissions

Enclosing class:
  `JexlSandbox`

public static final class JexlSandbox.Permissions extends Object
Contains the allow or block lists for properties and methods for a given class.

Since:
  3.0

- ## Method Summary

  Modifier and Type
  Method
  Description
  `JexlSandbox.Names`
  `execute()`
  Gets the set of method names in these permissions.
  `JexlSandbox.Permissions`
  `execute(String... methodNames)`
  Adds a list of executable methods names to these permissions.
  `boolean`
  `isInheritable()`
  Do these permissions apply to derived classes?
  `JexlSandbox.Names`
  `read()`
  Gets the set of readable property names in these permissions.
  `JexlSandbox.Permissions`
  `read(String... propertyNames)`
  Adds a list of readable property names to these permissions.
  `JexlSandbox.Names`
  `write()`
  Gets the set of writable property names in these permissions.
  `JexlSandbox.Permissions`
  `write(String... propertyNames)`
  Adds a list of writable property names to these permissions.

  ### Methods inherited from class Object

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

- ## Method Details

  - ### execute

    public JexlSandbox.Names execute()
    Gets the set of method names in these permissions.
    Returns:
      the set of method names

  - ### execute

    public JexlSandbox.Permissions execute(String... methodNames)
    Adds a list of executable methods names to these permissions.

    The constructor is denoted as the empty-string, all other methods by their names.

    Parameters:
      `methodNames` - the method names
    Returns:
      `this` instance of permissions

  - ### isInheritable

    public boolean isInheritable()
    Do these permissions apply to derived classes?
    Returns:
      whether these permissions apply to derived classes.

  - ### read

    public JexlSandbox.Names read()
    Gets the set of readable property names in these permissions.
    Returns:
      the set of property names

  - ### read

    public JexlSandbox.Permissions read(String... propertyNames)
    Adds a list of readable property names to these permissions.
    Parameters:
      `propertyNames` - the property names
    Returns:
      `this` instance of permissions

  - ### write

    public JexlSandbox.Names write()
    Gets the set of writable property names in these permissions.
    Returns:
      the set of property names

  - ### write

    public JexlSandbox.Permissions write(String... propertyNames)
    Adds a list of writable property names to these permissions.
    Parameters:
      `propertyNames` - the property names
    Returns:
      `this` instance of permissions