ariba.util.expr
Class ExprRuntime

java.lang.Object
  extended by ariba.util.expr.ExprRuntime

public abstract class ExprRuntime
extends java.lang.Object

This is an abstract class with static methods that define runtime caching information in AribaExpr.

Author:
Luke Blanshard (blanshlu@netscape.net), Drew Davidson (drew@ognl.org)

Field Summary
static int INDEXED_PROPERTY_INT
          JavaBeans IndexedProperty
static int INDEXED_PROPERTY_NONE
          Not an indexed property
static int INDEXED_PROPERTY_OBJECT
          AribaExpr ObjectIndexedProperty
static java.lang.Object[] NoArguments
           
static java.lang.Class[] NoArgumentTypes
           
static java.lang.Object NoConversionPossible
          Token returned by TypeConverter for no conversion possible
static java.lang.Object NotFound
           
static java.util.List NotFoundList
           
static java.util.Map NotFoundMap
           
static java.lang.String NULL_DISPLY_STRING
           
static java.lang.String NULL_VALUE_STRING
           
 
Constructor Summary
ExprRuntime()
           
 
Method Summary
static boolean areArgsCompatible(java.lang.Object[] args, java.lang.Class[] classes)
          Tells whether the given array of objects is compatible with the given array of classes---that is, whether the given array of objects can be passed as arguments to a method or constructor whose parameter types are the given array of classes.
static java.lang.Object callAppropriateMethod(ExprContext context, java.lang.Object source, java.lang.Object target, java.lang.String methodName, java.lang.reflect.Method method, java.lang.Object[] args)
           
static java.lang.Object callConstructor(ExprContext context, java.lang.String className, java.lang.Object[] args)
           
static java.lang.Object callMethod(ExprContext context, java.lang.Object target, java.lang.String methodName, java.lang.String propertyName, java.lang.Object[] args)
           
static java.lang.Object callStaticMethod(ExprContext context, java.lang.String className, java.lang.String methodName, java.lang.Object[] args)
           
static boolean canArgsWideningTo(java.lang.Object[] args, java.lang.Class[] classes)
          Tells whether the given array of objects is compatible with the given array of classes---that is, whether the given array of objects can be passed as arguments to a method or constructor whose parameter types are the given array of classes.
static boolean canWideningTo(java.lang.Object object, java.lang.Class c)
          Tells whether the given object's type can be widen to the given class ---that is, whether the given object can be passed as an argument to a method or constructor with type widdening conversion.
static java.lang.Class classForName(ExprContext context, java.lang.String className)
           
static java.lang.Object convert(java.lang.Object source)
           
static java.lang.Class getArgClass(java.lang.Object arg)
          Gets the class for a method argument that is appropriate for looking up methods by reflection, by looking for the standard primitive wrapper classes and exchanging for them their underlying primitive class objects.
static java.lang.String getBaseName(java.lang.Object o)
          Returns the base name (the class name without the package name prepended) of the object given.
static java.lang.String getClassBaseName(java.lang.Class c)
          Returns the base name (the class name without the package name prepended) of the class given.
static java.lang.String getClassName(java.lang.Class c, boolean fullyQualified)
           
static java.lang.String getClassName(java.lang.Object o, boolean fullyQualified)
           
static java.lang.String getClassPackageName(java.lang.Class c)
          Returns the package name of the class given.
static java.util.List getConstructors(java.lang.Class targetClass)
           
static java.lang.reflect.Constructor getConvertedConstructorAndArgs(ExprContext context, java.lang.Object target, java.util.List constructors, java.lang.Object[] args, java.lang.Object[] newArgs)
           
static java.lang.reflect.Method getConvertedMethodAndArgs(ExprContext context, java.lang.Object target, java.lang.String propertyName, java.util.List methods, java.lang.Object[] args, java.lang.Object[] newArgs)
           
static java.lang.Object getConvertedType(ExprContext context, java.lang.Object target, java.lang.reflect.Member member, java.lang.String propertyName, java.lang.Object value, java.lang.Class type)
           
static boolean getConvertedTypes(ExprContext context, java.lang.Object target, java.lang.reflect.Member member, java.lang.String propertyName, java.lang.Class[] parameterTypes, java.lang.Object[] args, java.lang.Object[] newArgs)
           
static java.util.List getDeclaredMethods(java.lang.Class targetClass, java.lang.String propertyName, boolean findSets)
           
static EvaluationPool getEvaluationPool()
           
static java.lang.reflect.Field getField(java.lang.Class inClass, java.lang.String name)
           
static java.util.Map getFields(java.lang.Class targetClass)
           
static java.lang.Object getFieldValue(ExprContext context, java.lang.Object target, java.lang.String propertyName)
           
static java.lang.Object getFieldValue(ExprContext context, java.lang.Object target, java.lang.String propertyName, boolean checkAccessAndExistence)
           
static java.lang.reflect.Method getGetMethod(ExprContext context, java.lang.Class targetClass, java.lang.String propertyName)
           
static java.lang.Object getIndexedProperty(ExprContext context, java.lang.Object source, java.lang.String name, java.lang.Object index)
           
static int getIndexedPropertyType(ExprContext context, java.lang.Class sourceClass, java.lang.String name)
          Determines the index property type, if any.
static MethodAccessor getMethodAccessor(java.lang.Class cls)
           
static java.util.Map getMethods(java.lang.Class targetClass, boolean staticMethods)
           
static java.util.List getMethods(java.lang.Class targetClass, java.lang.String name, boolean staticMethods)
           
static java.lang.Object getMethodValue(ExprContext context, java.lang.Object target, java.lang.String propertyName)
           
static java.lang.Object getMethodValue(ExprContext context, java.lang.Object target, java.lang.String propertyName, boolean checkAccessAndExistence)
          If the checkAccessAndExistence flag is true this method will check to see if the method exists and if it is accessible according to the context's MemberAccess.
static java.lang.String getModifierString(int modifiers)
           
static NullHandler getNullHandler(java.lang.Class cls)
           
static ObjectArrayPool getObjectArrayPool()
           
static java.lang.String getPackageName(java.lang.Object o)
          Returns the package name of the object's class.
static java.lang.Class[] getParameterTypes(java.lang.reflect.Constructor c)
          Returns the parameter types of the given method.
static java.lang.Class[] getParameterTypes(java.lang.reflect.Method m)
          Returns the parameter types of the given method.
static java.security.Permission getPermission(java.lang.reflect.Method method)
          Permission will be named "invoke..".
static java.lang.String getPointerString(int num)
          Returns a "pointer" string in the usual format for these things - 0x.
static java.lang.String getPointerString(java.lang.Object o)
          Returns a "pointer" string in the usual format for these things - 0x for the object given.
static java.lang.Object getPrimitiveDefaultValue(java.lang.Class forClass)
           
static java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.Class targetClass, java.lang.String propertyName)
          This method returns a PropertyDescriptor for the given class and property name using a Map lookup (using getPropertyDescriptorsMap()).
static java.beans.PropertyDescriptor getPropertyDescriptorFromArray(java.lang.Class targetClass, java.lang.String name)
          Gets the property descriptor with the given name for the target class given.
static java.util.Map getPropertyDescriptors(java.lang.Class targetClass)
          This method returns the property descriptors for the given class as a Map
static java.beans.PropertyDescriptor[] getPropertyDescriptorsArray(java.lang.Class targetClass)
           
static java.lang.SecurityManager getSecurityManager()
          Gets the SecurityManager that AribaExpr uses to determine permissions for invoking methods.
static java.lang.reflect.Method getSetMethod(ExprContext context, java.lang.Class targetClass, java.lang.String propertyName)
           
static java.lang.Object getStaticField(ExprContext context, java.lang.String className, java.lang.String fieldName)
           
static java.lang.Class getTargetClass(java.lang.Object o)
          Gets the "target" class of an object for looking up accessors that are registered on the target.
static java.lang.String getUniqueDescriptor(java.lang.Object object)
          Returns a unique descriptor string that includes the object's class' base name and a unique integer identifier.
static java.lang.String getUniqueDescriptor(java.lang.Object object, boolean fullyQualified)
          Returns a unique descriptor string that includes the object's class and a unique integer identifier.
static boolean hasField(ExprContext context, java.lang.Object target, java.lang.Class inClass, java.lang.String propertyName)
           
static boolean hasGetMethod(ExprContext context, java.lang.Object target, java.lang.Class targetClass, java.lang.String propertyName)
           
static boolean hasGetProperty(ExprContext context, java.lang.Object target, java.lang.Object oname)
           
static boolean hasSetMethod(ExprContext context, java.lang.Object target, java.lang.Class targetClass, java.lang.String propertyName)
           
static boolean hasSetProperty(ExprContext context, java.lang.Object target, java.lang.Object oname)
           
static java.lang.Object invokeMethod(java.lang.Object target, java.lang.reflect.Method method, java.lang.Object[] argsArray)
           
static boolean isFieldAccessible(ExprContext context, java.lang.Object target, java.lang.Class inClass, java.lang.String propertyName)
           
static boolean isFieldAccessible(ExprContext context, java.lang.Object target, java.lang.reflect.Field field, java.lang.String propertyName)
           
static boolean isInstance(ExprContext context, java.lang.Object value, java.lang.String className)
           
static boolean isMethodAccessible(ExprContext context, java.lang.Object target, java.lang.reflect.Method method, java.lang.String propertyName)
           
static boolean isMoreSpecific(java.lang.Class[] classes1, java.lang.Class[] classes2)
          Tells whether the first array of classes is more specific than the second.
static boolean isTypeCompatible(java.lang.Object object, java.lang.Class c)
          Tells whether the given object is compatible with the given class ---that is, whether the given object can be passed as an argument to a method or constructor whose parameter type is the given class.
static boolean setFieldValue(ExprContext context, java.lang.Object target, java.lang.String propertyName, java.lang.Object value)
           
static void setIndexedProperty(ExprContext context, java.lang.Object source, java.lang.String name, java.lang.Object index, java.lang.Object value)
           
static void setMethodAccessor(java.lang.Class cls, MethodAccessor accessor)
           
static boolean setMethodValue(ExprContext context, java.lang.Object target, java.lang.String propertyName, java.lang.Object value)
           
static boolean setMethodValue(ExprContext context, java.lang.Object target, java.lang.String propertyName, java.lang.Object value, boolean checkAccessAndExistence)
           
static void setNullHandler(java.lang.Class cls, NullHandler handler)
           
static void setSecurityManager(java.lang.SecurityManager value)
          Sets the SecurityManager that AribaExpr uses to determine permissions for invoking methods.
static void setStaticField(ExprContext context, java.lang.String className, java.lang.String fieldName, java.lang.Object value)
           
static java.lang.Object[] toArray(java.util.List list)
          Utility to convert a List into an Object[] array.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NotFound

public static final java.lang.Object NotFound

NotFoundList

public static final java.util.List NotFoundList

NotFoundMap

public static final java.util.Map NotFoundMap

NoArguments

public static final java.lang.Object[] NoArguments

NoArgumentTypes

public static final java.lang.Class[] NoArgumentTypes

NoConversionPossible

public static final java.lang.Object NoConversionPossible
Token returned by TypeConverter for no conversion possible


INDEXED_PROPERTY_NONE

public static int INDEXED_PROPERTY_NONE
Not an indexed property


INDEXED_PROPERTY_INT

public static int INDEXED_PROPERTY_INT
JavaBeans IndexedProperty


INDEXED_PROPERTY_OBJECT

public static int INDEXED_PROPERTY_OBJECT
AribaExpr ObjectIndexedProperty


NULL_DISPLY_STRING

public static final java.lang.String NULL_DISPLY_STRING

NULL_VALUE_STRING

public static final java.lang.String NULL_VALUE_STRING
See Also:
Constant Field Values
Constructor Detail

ExprRuntime

public ExprRuntime()
Method Detail

getTargetClass

public static java.lang.Class getTargetClass(java.lang.Object o)
Gets the "target" class of an object for looking up accessors that are registered on the target. If the object is a Class object this will return the Class itself, else it will return object's getClass() result.


getBaseName

public static java.lang.String getBaseName(java.lang.Object o)
Returns the base name (the class name without the package name prepended) of the object given.


getClassBaseName

public static java.lang.String getClassBaseName(java.lang.Class c)
Returns the base name (the class name without the package name prepended) of the class given.


getClassName

public static java.lang.String getClassName(java.lang.Object o,
                                            boolean fullyQualified)

getClassName

public static java.lang.String getClassName(java.lang.Class c,
                                            boolean fullyQualified)

getPackageName

public static java.lang.String getPackageName(java.lang.Object o)
Returns the package name of the object's class.


getClassPackageName

public static java.lang.String getClassPackageName(java.lang.Class c)
Returns the package name of the class given.


getPointerString

public static java.lang.String getPointerString(int num)
Returns a "pointer" string in the usual format for these things - 0x.


getPointerString

public static java.lang.String getPointerString(java.lang.Object o)
Returns a "pointer" string in the usual format for these things - 0x for the object given. This will always return a unique value for each object.


getUniqueDescriptor

public static java.lang.String getUniqueDescriptor(java.lang.Object object,
                                                   boolean fullyQualified)
Returns a unique descriptor string that includes the object's class and a unique integer identifier. If fullyQualified is true then the class name will be fully qualified to include the package name, else it will be just the class' base name.


getUniqueDescriptor

public static java.lang.String getUniqueDescriptor(java.lang.Object object)
Returns a unique descriptor string that includes the object's class' base name and a unique integer identifier.


toArray

public static java.lang.Object[] toArray(java.util.List list)
Utility to convert a List into an Object[] array. If the list is zero elements this will return a constant array; toArray() on List always returns a new object and this is wasteful for our purposes.


getParameterTypes

public static java.lang.Class[] getParameterTypes(java.lang.reflect.Method m)
Returns the parameter types of the given method.


getParameterTypes

public static java.lang.Class[] getParameterTypes(java.lang.reflect.Constructor c)
Returns the parameter types of the given method.


getSecurityManager

public static java.lang.SecurityManager getSecurityManager()
Gets the SecurityManager that AribaExpr uses to determine permissions for invoking methods.

Returns:
SecurityManager for AribaExpr

setSecurityManager

public static void setSecurityManager(java.lang.SecurityManager value)
Sets the SecurityManager that AribaExpr uses to determine permissions for invoking methods.

Parameters:
value - SecurityManager to set

getPermission

public static java.security.Permission getPermission(java.lang.reflect.Method method)
Permission will be named "invoke..".


invokeMethod

public static java.lang.Object invokeMethod(java.lang.Object target,
                                            java.lang.reflect.Method method,
                                            java.lang.Object[] argsArray)
                                     throws java.lang.reflect.InvocationTargetException,
                                            java.lang.IllegalAccessException
Throws:
java.lang.reflect.InvocationTargetException
java.lang.IllegalAccessException

getArgClass

public static final java.lang.Class getArgClass(java.lang.Object arg)
Gets the class for a method argument that is appropriate for looking up methods by reflection, by looking for the standard primitive wrapper classes and exchanging for them their underlying primitive class objects. Other classes are passed through unchanged.

Parameters:
arg - an object that is being passed to a method
Returns:
the class to use to look up the method

canWideningTo

public static final boolean canWideningTo(java.lang.Object object,
                                          java.lang.Class c)
Tells whether the given object's type can be widen to the given class ---that is, whether the given object can be passed as an argument to a method or constructor with type widdening conversion.


canArgsWideningTo

public static final boolean canArgsWideningTo(java.lang.Object[] args,
                                              java.lang.Class[] classes)
Tells whether the given array of objects is compatible with the given array of classes---that is, whether the given array of objects can be passed as arguments to a method or constructor whose parameter types are the given array of classes.


isTypeCompatible

public static final boolean isTypeCompatible(java.lang.Object object,
                                             java.lang.Class c)
Tells whether the given object is compatible with the given class ---that is, whether the given object can be passed as an argument to a method or constructor whose parameter type is the given class. If object is null this will return true because null is compatible with any type.


areArgsCompatible

public static final boolean areArgsCompatible(java.lang.Object[] args,
                                              java.lang.Class[] classes)
Tells whether the given array of objects is compatible with the given array of classes---that is, whether the given array of objects can be passed as arguments to a method or constructor whose parameter types are the given array of classes.


isMoreSpecific

public static final boolean isMoreSpecific(java.lang.Class[] classes1,
                                           java.lang.Class[] classes2)
Tells whether the first array of classes is more specific than the second. Assumes that the two arrays are of the same length.


getModifierString

public static final java.lang.String getModifierString(int modifiers)

classForName

public static final java.lang.Class classForName(ExprContext context,
                                                 java.lang.String className)
                                          throws java.lang.ClassNotFoundException
Throws:
java.lang.ClassNotFoundException

isInstance

public static final boolean isInstance(ExprContext context,
                                       java.lang.Object value,
                                       java.lang.String className)
                                throws ExprException
Throws:
ExprException

getPrimitiveDefaultValue

public static java.lang.Object getPrimitiveDefaultValue(java.lang.Class forClass)

getConvertedType

public static java.lang.Object getConvertedType(ExprContext context,
                                                java.lang.Object target,
                                                java.lang.reflect.Member member,
                                                java.lang.String propertyName,
                                                java.lang.Object value,
                                                java.lang.Class type)

getConvertedTypes

public static boolean getConvertedTypes(ExprContext context,
                                        java.lang.Object target,
                                        java.lang.reflect.Member member,
                                        java.lang.String propertyName,
                                        java.lang.Class[] parameterTypes,
                                        java.lang.Object[] args,
                                        java.lang.Object[] newArgs)

getConvertedMethodAndArgs

public static java.lang.reflect.Method getConvertedMethodAndArgs(ExprContext context,
                                                                 java.lang.Object target,
                                                                 java.lang.String propertyName,
                                                                 java.util.List methods,
                                                                 java.lang.Object[] args,
                                                                 java.lang.Object[] newArgs)

getConvertedConstructorAndArgs

public static java.lang.reflect.Constructor getConvertedConstructorAndArgs(ExprContext context,
                                                                           java.lang.Object target,
                                                                           java.util.List constructors,
                                                                           java.lang.Object[] args,
                                                                           java.lang.Object[] newArgs)

callAppropriateMethod

public static java.lang.Object callAppropriateMethod(ExprContext context,
                                                     java.lang.Object source,
                                                     java.lang.Object target,
                                                     java.lang.String methodName,
                                                     java.lang.reflect.Method method,
                                                     java.lang.Object[] args)
                                              throws MethodFailedException
Throws:
MethodFailedException

callStaticMethod

public static final java.lang.Object callStaticMethod(ExprContext context,
                                                      java.lang.String className,
                                                      java.lang.String methodName,
                                                      java.lang.Object[] args)
                                               throws ExprException,
                                                      MethodFailedException
Throws:
ExprException
MethodFailedException

callMethod

public static final java.lang.Object callMethod(ExprContext context,
                                                java.lang.Object target,
                                                java.lang.String methodName,
                                                java.lang.String propertyName,
                                                java.lang.Object[] args)
                                         throws ExprException,
                                                MethodFailedException
Throws:
ExprException
MethodFailedException

callConstructor

public static final java.lang.Object callConstructor(ExprContext context,
                                                     java.lang.String className,
                                                     java.lang.Object[] args)
                                              throws ExprException
Throws:
ExprException

getMethodValue

public static final java.lang.Object getMethodValue(ExprContext context,
                                                    java.lang.Object target,
                                                    java.lang.String propertyName)
                                             throws ExprException,
                                                    java.lang.IllegalAccessException,
                                                    java.lang.NoSuchMethodException,
                                                    java.beans.IntrospectionException
Throws:
ExprException
java.lang.IllegalAccessException
java.lang.NoSuchMethodException
java.beans.IntrospectionException

getMethodValue

public static final java.lang.Object getMethodValue(ExprContext context,
                                                    java.lang.Object target,
                                                    java.lang.String propertyName,
                                                    boolean checkAccessAndExistence)
                                             throws ExprException,
                                                    java.lang.IllegalAccessException,
                                                    java.lang.NoSuchMethodException,
                                                    java.beans.IntrospectionException
If the checkAccessAndExistence flag is true this method will check to see if the method exists and if it is accessible according to the context's MemberAccess. If neither test passes this will return NotFound.

Throws:
ExprException
java.lang.IllegalAccessException
java.lang.NoSuchMethodException
java.beans.IntrospectionException

setMethodValue

public static final boolean setMethodValue(ExprContext context,
                                           java.lang.Object target,
                                           java.lang.String propertyName,
                                           java.lang.Object value)
                                    throws ExprException,
                                           java.lang.IllegalAccessException,
                                           java.lang.NoSuchMethodException,
                                           MethodFailedException,
                                           java.beans.IntrospectionException
Throws:
ExprException
java.lang.IllegalAccessException
java.lang.NoSuchMethodException
MethodFailedException
java.beans.IntrospectionException

setMethodValue

public static final boolean setMethodValue(ExprContext context,
                                           java.lang.Object target,
                                           java.lang.String propertyName,
                                           java.lang.Object value,
                                           boolean checkAccessAndExistence)
                                    throws ExprException,
                                           java.lang.IllegalAccessException,
                                           java.lang.NoSuchMethodException,
                                           MethodFailedException,
                                           java.beans.IntrospectionException
Throws:
ExprException
java.lang.IllegalAccessException
java.lang.NoSuchMethodException
MethodFailedException
java.beans.IntrospectionException

getConstructors

public static final java.util.List getConstructors(java.lang.Class targetClass)

getMethods

public static final java.util.Map getMethods(java.lang.Class targetClass,
                                             boolean staticMethods)

getMethods

public static final java.util.List getMethods(java.lang.Class targetClass,
                                              java.lang.String name,
                                              boolean staticMethods)

getFields

public static final java.util.Map getFields(java.lang.Class targetClass)

getField

public static final java.lang.reflect.Field getField(java.lang.Class inClass,
                                                     java.lang.String name)

getFieldValue

public static final java.lang.Object getFieldValue(ExprContext context,
                                                   java.lang.Object target,
                                                   java.lang.String propertyName)
                                            throws java.lang.NoSuchFieldException
Throws:
java.lang.NoSuchFieldException

getFieldValue

public static final java.lang.Object getFieldValue(ExprContext context,
                                                   java.lang.Object target,
                                                   java.lang.String propertyName,
                                                   boolean checkAccessAndExistence)
                                            throws java.lang.NoSuchFieldException
Throws:
java.lang.NoSuchFieldException

setFieldValue

public static final boolean setFieldValue(ExprContext context,
                                          java.lang.Object target,
                                          java.lang.String propertyName,
                                          java.lang.Object value)
                                   throws ExprException
Throws:
ExprException

isFieldAccessible

public static final boolean isFieldAccessible(ExprContext context,
                                              java.lang.Object target,
                                              java.lang.Class inClass,
                                              java.lang.String propertyName)

isFieldAccessible

public static final boolean isFieldAccessible(ExprContext context,
                                              java.lang.Object target,
                                              java.lang.reflect.Field field,
                                              java.lang.String propertyName)

hasField

public static final boolean hasField(ExprContext context,
                                     java.lang.Object target,
                                     java.lang.Class inClass,
                                     java.lang.String propertyName)

setStaticField

public static final void setStaticField(ExprContext context,
                                        java.lang.String className,
                                        java.lang.String fieldName,
                                        java.lang.Object value)
                                 throws ExprException
Throws:
ExprException

getStaticField

public static final java.lang.Object getStaticField(ExprContext context,
                                                    java.lang.String className,
                                                    java.lang.String fieldName)
                                             throws ExprException
Throws:
ExprException

getDeclaredMethods

public static final java.util.List getDeclaredMethods(java.lang.Class targetClass,
                                                      java.lang.String propertyName,
                                                      boolean findSets)

getGetMethod

public static final java.lang.reflect.Method getGetMethod(ExprContext context,
                                                          java.lang.Class targetClass,
                                                          java.lang.String propertyName)
                                                   throws java.beans.IntrospectionException,
                                                          ExprException
Throws:
java.beans.IntrospectionException
ExprException

isMethodAccessible

public static final boolean isMethodAccessible(ExprContext context,
                                               java.lang.Object target,
                                               java.lang.reflect.Method method,
                                               java.lang.String propertyName)

hasGetMethod

public static final boolean hasGetMethod(ExprContext context,
                                         java.lang.Object target,
                                         java.lang.Class targetClass,
                                         java.lang.String propertyName)
                                  throws java.beans.IntrospectionException,
                                         ExprException
Throws:
java.beans.IntrospectionException
ExprException

getSetMethod

public static final java.lang.reflect.Method getSetMethod(ExprContext context,
                                                          java.lang.Class targetClass,
                                                          java.lang.String propertyName)
                                                   throws java.beans.IntrospectionException,
                                                          ExprException
Throws:
java.beans.IntrospectionException
ExprException

hasSetMethod

public static final boolean hasSetMethod(ExprContext context,
                                         java.lang.Object target,
                                         java.lang.Class targetClass,
                                         java.lang.String propertyName)
                                  throws java.beans.IntrospectionException,
                                         ExprException
Throws:
java.beans.IntrospectionException
ExprException

hasGetProperty

public static final boolean hasGetProperty(ExprContext context,
                                           java.lang.Object target,
                                           java.lang.Object oname)
                                    throws java.beans.IntrospectionException,
                                           ExprException
Throws:
java.beans.IntrospectionException
ExprException

hasSetProperty

public static final boolean hasSetProperty(ExprContext context,
                                           java.lang.Object target,
                                           java.lang.Object oname)
                                    throws java.beans.IntrospectionException,
                                           ExprException
Throws:
java.beans.IntrospectionException
ExprException

getPropertyDescriptors

public static final java.util.Map getPropertyDescriptors(java.lang.Class targetClass)
                                                  throws java.beans.IntrospectionException,
                                                         ExprException
This method returns the property descriptors for the given class as a Map

Throws:
java.beans.IntrospectionException
ExprException

getPropertyDescriptor

public static final java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.Class targetClass,
                                                                        java.lang.String propertyName)
                                                                 throws java.beans.IntrospectionException,
                                                                        ExprException
This method returns a PropertyDescriptor for the given class and property name using a Map lookup (using getPropertyDescriptorsMap()).

Throws:
java.beans.IntrospectionException
ExprException

getPropertyDescriptorsArray

public static final java.beans.PropertyDescriptor[] getPropertyDescriptorsArray(java.lang.Class targetClass)
                                                                         throws java.beans.IntrospectionException
Throws:
java.beans.IntrospectionException

getPropertyDescriptorFromArray

public static final java.beans.PropertyDescriptor getPropertyDescriptorFromArray(java.lang.Class targetClass,
                                                                                 java.lang.String name)
                                                                          throws java.beans.IntrospectionException
Gets the property descriptor with the given name for the target class given.

Parameters:
targetClass - Class for which property descriptor is desired
name - Name of property
Returns:
PropertyDescriptor of the named property or null if the class has no property with the given name
Throws:
java.beans.IntrospectionException

setMethodAccessor

public static final void setMethodAccessor(java.lang.Class cls,
                                           MethodAccessor accessor)

getMethodAccessor

public static final MethodAccessor getMethodAccessor(java.lang.Class cls)
                                              throws ExprException
Throws:
ExprException

getNullHandler

public static final NullHandler getNullHandler(java.lang.Class cls)
                                        throws ExprException
Throws:
ExprException

setNullHandler

public static final void setNullHandler(java.lang.Class cls,
                                        NullHandler handler)

getIndexedPropertyType

public static final int getIndexedPropertyType(ExprContext context,
                                               java.lang.Class sourceClass,
                                               java.lang.String name)
                                        throws ExprException
Determines the index property type, if any. Returns INDEXED_PROPERTY_NONE if the property is not index-accessible as determined by AribaExpr or JavaBeans. If it is indexable then this will return whether it is a JavaBeans indexed property, conforming to the indexed property patterns (returns INDEXED_PROPERTY_INT) or if it conforms to the AribaExpr arbitrary object indexable (returns INDEXED_PROPERTY_OBJECT).

Throws:
ExprException

getIndexedProperty

public static final java.lang.Object getIndexedProperty(ExprContext context,
                                                        java.lang.Object source,
                                                        java.lang.String name,
                                                        java.lang.Object index)
                                                 throws ExprException
Throws:
ExprException

setIndexedProperty

public static final void setIndexedProperty(ExprContext context,
                                            java.lang.Object source,
                                            java.lang.String name,
                                            java.lang.Object index,
                                            java.lang.Object value)
                                     throws ExprException
Throws:
ExprException

getEvaluationPool

public static EvaluationPool getEvaluationPool()

getObjectArrayPool

public static ObjectArrayPool getObjectArrayPool()

convert

public static java.lang.Object convert(java.lang.Object source)
                                throws ExprException
Throws:
ExprException


AribaWeb User Interface Development Framework
Copyright © 2000-2014 Ariba, Inc. All Rights Reserved.