Top Description Inners Fields Constructors Methods
org.apache.commons.jexl2.introspection

public Class UberspectImpl

extends Introspector
implements Uberspect
Class Inheritance
All Implemented Interfaces
org.apache.commons.jexl2.introspection.Uberspect
Known Direct Subclasses
org.apache.commons.jexl2.introspection.SandboxUberspectImpl
Imports
java.beans.IntrospectionException, org.apache.commons.jexl2.internal.Introspector, .AbstractExecutor, .ArrayIterator, .EnumerationIterator, java.lang.reflect.Constructor, .Field, .Modifier, .InvocationTargetException, .Method, java.util.Arrays, .Enumeration, .Iterator, .Map, org.apache.commons.jexl2.JexlInfo, .JexlException, org.apache.commons.jexl2.internal.introspection.MethodKey, org.apache.commons.logging.Log

Implementation of Uberspect to provide the default introspective functionality of JEXL.

This is the class to derive to customize introspection.

Since
1.0

Nested and Inner Type Summary

Modifier and TypeClass and Description
private class
UberspectImpl.ConstructorMethod

A JexlMethod that wraps constructor.

public static class
UberspectImpl.FieldPropertyGet

Deprecated Do not use externally - will be made private in a later version
A JexlPropertyGet for public fields.
public static class
UberspectImpl.FieldPropertySet

Deprecated Do not use externally - will be made private in a later version
A JexlPropertySet for public fields.
public static class
UberspectImpl.IndexedContainer

A generic indexed property container, exposes get(key) and set(key, value) and solves method call dynamically based on arguments.

private static class
UberspectImpl.IndexedType

Abstract an indexed property container.

Field Summary

Modifier and TypeField and Description
public static final Object
TRY_FAILED

Publicly exposed special failure object returned by tryInvoke.

Inherited from org.apache.commons.jexl2.internal.Introspector:
rlog

Constructor Summary

AccessConstructor and Description
public
UberspectImpl(Log
the logger used for all logging needs
runtimeLogger
)

Creates a new UberspectImpl.

Method Summary

Modifier and TypeMethod and Description
public Constructor<?>
getConstructor(Object
a class or class name
ctorHandle
,
Object[]
constructor arguments
args
,
JexlInfo
contextual information
info
)

Implements org.apache.commons.jexl2.introspection.Uberspect.getConstructor.

Deprecated
Returns a class constructor.
public JexlMethod
getConstructorMethod(Object
a class or class name
ctorHandle
,
Object[]
constructor arguments
args
,
JexlInfo
contextual information
info
)

Implements org.apache.commons.jexl2.introspection.Uberspect.getConstructorMethod.

Returns a class constructor wrapped in a JexlMethod.
public Field

Returns:

a Field.
getField
(Object
the object
obj
,
String
the field name
name
,
JexlInfo
debug info
info
)

Returns a class field.

protected JexlPropertyGet

Returns:

a JexlPropertyGet is successfull, null otherwise
getIndexedGet
(Object
the object
object
,
String
the container name
name
)

Attempts to find an indexed-property getter in an object.

public Iterator<?>
getIterator(Object
to get the iterator for
obj
,
JexlInfo
contextual information
info
)

Implements org.apache.commons.jexl2.introspection.Uberspect.getIterator.

Gets an iterator from an object.
public JexlMethod
getMethod(Object
the object
obj
,
String
the method name
method
,
Object[]
method arguments
args
,
JexlInfo
contextual information
info
)

Implements org.apache.commons.jexl2.introspection.Uberspect.getMethod.

Returns a JexlMethod.
public JexlPropertyGet
getPropertyGet(Object
the object to get the property from
obj
,
Object
property name
identifier
,
JexlInfo
contextual information
info
)

Implements org.apache.commons.jexl2.introspection.Uberspect.getPropertyGet.

Property getter.
public JexlPropertySet
getPropertySet(final Object
the object to get the property from.
obj
,
final Object
property name
identifier
,
Object
value to set
arg
,
JexlInfo
contextual information
info
)

Implements org.apache.commons.jexl2.introspection.Uberspect.getPropertySet.

Property setter.
public void
setLoader(ClassLoader
the class loader to use
cloader
)

Resets this Uberspect class loader.

Inherited from org.apache.commons.jexl2.internal.Introspector:
basegetClassByNamegetConstructorgetFieldgetFieldNamesgetGetExecutorgetMethodgetMethodgetMethodExecutorgetMethodNamesgetMethodsgetSetExecutorsetClassLoadertoIntegertoString