Interface ReflectionProvider

All Known Implementing Classes:
OgnlReflectionProvider

public interface ReflectionProvider
  • Method Details

    • getGetMethod

      Method getGetMethod(Class targetClass, String propertyName) throws IntrospectionException, ReflectionException
      Throws:
      IntrospectionException
      ReflectionException
    • getSetMethod

      Method getSetMethod(Class targetClass, String propertyName) throws IntrospectionException, ReflectionException
      Throws:
      IntrospectionException
      ReflectionException
    • getField

      Field getField(Class inClass, String name)
    • setProperties

      void setProperties(Map<String,?> props, Object o, Map<String,Object> context)
      Sets the object's properties using the default type converter, defaulting to not throw exceptions for problems setting the properties.
      Parameters:
      props - the properties being set
      o - the object
      context - the action context
    • setProperties

      void setProperties(Map<String,?> props, Object o, Map<String,Object> context, boolean throwPropertyExceptions) throws ReflectionException
      Sets the object's properties using the default type converter.
      Parameters:
      props - the properties being set
      o - the object
      context - the action context
      throwPropertyExceptions - boolean which tells whether it should throw exceptions for problems setting the properties
      Throws:
      ReflectionException
    • setProperties

      void setProperties(Map<String,?> properties, Object o)
      Sets the properties on the object using the default context, defaulting to not throwing exceptions for problems setting the properties.
      Parameters:
      properties - property map
      o - object
    • getPropertyDescriptor

      PropertyDescriptor getPropertyDescriptor(Class targetClass, String propertyName) throws IntrospectionException, ReflectionException
      This method returns a PropertyDescriptor for the given class and property name using a Map lookup (using getPropertyDescriptorsMap()).
      Parameters:
      targetClass - target class of the property descriptor
      propertyName - property name
      Returns:
      PropertyDescriptor for the given class and property name
      Throws:
      IntrospectionException - in case of introspection error
      ReflectionException - in case of reflection problems
    • copy

      void copy(Object from, Object to, Map<String,Object> context, Collection<String> exclusions, Collection<String> inclusions)
      Copies the properties in the object "from" and sets them in the object "to" using specified type converter, or XWorkConverter if none is specified.
      Parameters:
      from - the source object
      to - the target object
      context - the action context we're running under
      exclusions - collection of method names to excluded from copying ( can be null)
      inclusions - collection of method names to included copying (can be null) note if exclusions AND inclusions are supplied and not null nothing will get copied.
    • copy

      void copy(Object from, Object to, Map<String,Object> context, Collection<String> exclusions, Collection<String> inclusions, Class<?> editable)
      Copies the properties in the object "from" and sets them in the object "to" only setting properties defined in the given "editable" class (or interface) using specified type converter, or XWorkConverter if none is specified.
      Parameters:
      from - the source object
      to - the target object
      context - the action context we're running under
      exclusions - collection of method names to excluded from copying ( can be null)
      inclusions - collection of method names to included copying (can be null) note if exclusions AND inclusions are supplied and not null nothing will get copied.
      editable - the class (or interface) to restrict property setting to
    • getRealTarget

      Object getRealTarget(String property, Map<String,Object> context, Object root) throws ReflectionException
      Looks for the real target with the specified property given a root Object which may be a CompoundRoot.
      Parameters:
      property - specified property
      context - the context
      root - the root object
      Returns:
      the real target or null if no object can be found with the specified property
      Throws:
      ReflectionException - in case of reflection problems
    • setProperty

      void setProperty(String name, Object value, Object o, Map<String,Object> context, boolean throwPropertyExceptions)
      Sets the named property to the supplied value on the Object,
      Parameters:
      name - the name of the property to be set
      value - the value to set into the named property
      o - the object upon which to set the property
      context - the context which may include the TypeConverter
      throwPropertyExceptions - boolean which tells whether it should throw exceptions for problems setting the properties
    • setProperty

      void setProperty(String name, Object value, Object o, Map<String,Object> context)
      Sets the named property to the supplied value on the Object, defaults to not throwing property exceptions.
      Parameters:
      name - the name of the property to be set
      value - the value to set into the named property
      o - the object upon which to set the property
      context - the context which may include the TypeConverter
    • getBeanMap

      Creates a Map with read properties for the given source object.

      If the source object does not have a read property (i.e. write-only) then the property is added to the map with the value here is no read method for property-name.

      Parameters:
      source - the source object.
      Returns:
      a Map with (key = read property name, value = value of read property).
      Throws:
      IntrospectionException - is thrown if an exception occurs during introspection.
      ReflectionException
    • getValue

      Object getValue(String expression, Map<String,Object> context, Object root) throws ReflectionException
      Evaluates the given OGNL expression to extract a value from the given root object in a given context
      Parameters:
      expression - the OGNL expression to be parsed
      context - the naming context for the evaluation
      root - the root object for the OGNL expression
      Returns:
      the result of evaluating the expression
      Throws:
      ReflectionException
    • setValue

      void setValue(String expression, Map<String,Object> context, Object root, Object value) throws ReflectionException
      Evaluates the given OGNL expression to insert a value into the object graph rooted at the given root object given the context.
      Parameters:
      expression - the OGNL expression to be parsed
      root - the root object for the OGNL expression
      context - the naming context for the evaluation
      value - the value to insert into the object graph
      Throws:
      ReflectionException
    • getPropertyDescriptors

      PropertyDescriptor[] getPropertyDescriptors(Object source) throws IntrospectionException
      Get's the java beans property descriptors for the given source.
      Parameters:
      source - the source object.
      Returns:
      property descriptors.
      Throws:
      IntrospectionException - is thrown if an exception occurs during introspection.