Class PropertyUtils

java.lang.Object
org.apache.cayenne.reflect.PropertyUtils

public class PropertyUtils extends Object
Utility methods to quickly access object properties. This class supports simple and nested properties and also conversion of property values to match property type. No converter customization is provided yet, so only basic converters for Strings, Numbers and primitives are available.
Since:
1.2
  • Method Summary

    Modifier and Type
    Method
    Description
    static Accessor
    accessor(String nestedPropertyName)
    Compiles an accessor that can be used for fast access for the nested property of the objects of a given class.
    static Object
    getProperty(Object object, String nestedPropertyName)
    Returns object property using JavaBean-compatible introspection with one addition - a property can be a dot-separated property name path.
    static void
    This method installs custom accessor factory to be used by property utils.
    static void
    setProperty(Object object, String nestedPropertyName, Object value)
    Sets object property using JavaBean-compatible introspection with one addition - a property can be a dot-separated property name path.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • accessor

      public static Accessor accessor(String nestedPropertyName)
      Compiles an accessor that can be used for fast access for the nested property of the objects of a given class.
      Since:
      4.0
    • getProperty

      public static Object getProperty(Object object, String nestedPropertyName) throws CayenneRuntimeException
      Returns object property using JavaBean-compatible introspection with one addition - a property can be a dot-separated property name path.
      Throws:
      CayenneRuntimeException
    • setProperty

      public static void setProperty(Object object, String nestedPropertyName, Object value) throws CayenneRuntimeException
      Sets object property using JavaBean-compatible introspection with one addition - a property can be a dot-separated property name path. Before setting a value attempts to convert it to a type compatible with the object property. Automatic conversion is supported between strings and basic types like numbers or primitives.
      Throws:
      CayenneRuntimeException
    • installAccessorFactory

      public static void installAccessorFactory(AccessorFactory accessorFactory)
      This method installs custom accessor factory to be used by property utils.

      A factory that produces BeanAccessor is used by default.

      Parameters:
      accessorFactory - new factory to use
      Since:
      4.1