org.apache.commons.jexl3.internal.introspection

## Class Permissions

- java.lang.Object
- - org.apache.commons.jexl3.internal.introspection.Permissions

-     public class Permissions
      extends Object

  Checks whether an element (ctor, field or method) is visible by JEXL introspection. Default implementation does this by checking if element has been annotated with NoJexl.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static Permissions` | `DEFAULT` The default singleton.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `allow(Class<?> clazz)` Checks whether a class or one of its super-classes or implemented interfaces explicitly disallows JEXL introspection.
    `boolean` | `allow(Constructor<?> ctor)` Checks whether a constructor explicitly disallows JEXL introspection.
    `boolean` | `allow(Field field)` Checks whether a field explicitly disallows JEXL introspection.
    `boolean` | `allow(Method method)` Checks whether a method explicitly disallows JEXL introspection.
    `boolean` | `allow(Package pack)` Checks whether a package explicitly disallows JEXL introspection.

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

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

- - ### Field Detail

    - #### DEFAULT

          public static final Permissions DEFAULT

      The default singleton.

  - ### Method Detail

    - #### allow

          public boolean allow(Package pack)

      Checks whether a package explicitly disallows JEXL introspection.
      Parameters:
        `pack` - the package
      Returns:
        true if JEXL is allowed to introspect, false otherwise

    - #### allow

          public boolean allow(Class<?> clazz)

      Checks whether a class or one of its super-classes or implemented interfaces explicitly disallows JEXL introspection.
      Parameters:
        `clazz` - the class to check
      Returns:
        true if JEXL is allowed to introspect, false otherwise

    - #### allow

          public boolean allow(Constructor<?> ctor)

      Checks whether a constructor explicitly disallows JEXL introspection.
      Parameters:
        `ctor` - the constructor to check
      Returns:
        true if JEXL is allowed to introspect, false otherwise

    - #### allow

          public boolean allow(Field field)

      Checks whether a field explicitly disallows JEXL introspection.
      Parameters:
        `field` - the field to check
      Returns:
        true if JEXL is allowed to introspect, false otherwise

    - #### allow

          public boolean allow(Method method)

      Checks whether a method explicitly disallows JEXL introspection.

      Since methods can be overridden, this also checks that no superclass or interface explicitly disallows this methods.

      Parameters:
        `method` - the method to check
      Returns:
        true if JEXL is allowed to introspect, false otherwise

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