Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.beanutils
Class DynaProperty

    java.lang.Object
      |
      +--org.apache.commons.beanutils.DynaProperty

All Implemented Interfaces:
  java.io.Serializable

public class DynaProperty
extends java.lang.Object
implements java.io.Serializable

The metadata describing an individual property of a DynaBean.

The meta contains an optional content type property (`getContentType()`) for use by mapped and iterated properties. A mapped or iterated property may choose to indicate the type it expects. The DynaBean implementation may choose to enforce this type on its entries. Alternatively, an implementatin may choose to ignore this property. All keys for maps must be of type String so no meta data is needed for map keys.

Version:
  $Revision: 555824 $ $Date: 2007-07-13 01:27:15 +0100 (Fri, 13 Jul 2007) $
Author:
  Craig R. McClanahan
See Also:
  Serialized Form

Field Summary
`protected java.lang.Class` | `contentType` The (optional) type of content elements for indexed `DynaProperty`
`protected java.lang.String` | `name` Property name
`protected java.lang.Class` | `type` Property type

Constructor Summary
`DynaProperty(java.lang.String name)` Construct a property that accepts any data type.
`DynaProperty(java.lang.String name, java.lang.Class type)` Construct a property of the specified data type.
`DynaProperty(java.lang.String name, java.lang.Class type, java.lang.Class contentType)` Construct an indexed or mapped `DynaProperty` that supports (pseudo)-introspection of the content type.

Method Summary
`boolean` | `equals(java.lang.Object obj)` Checks this instance against the specified Object for equality.
`java.lang.Class` | `getContentType()` Gets the (optional) type of the indexed content for `DynaProperty`'s that support this feature.
`java.lang.String` | `getName()` Get the name of this property.
`java.lang.Class` | `getType()` Gets the Java class representing the data type of the underlying property values.
`int` | `hashCode()`
`boolean` | `isIndexed()` Does this property represent an indexed value (ie an array or List)?
`boolean` | `isMapped()` Does this property represent a mapped value (ie a Map)?
`java.lang.String` | `toString()` Return a String representation of this Object.

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### name

    protected java.lang.String name

  Property name

### type

    protected transient java.lang.Class type

  Property type

### contentType

    protected transient java.lang.Class contentType

  The (optional) type of content elements for indexed `DynaProperty`

Constructor Detail

### DynaProperty

    public DynaProperty(java.lang.String name)

  Construct a property that accepts any data type.
  Parameters:
    `name` - Name of the property being described

### DynaProperty

    public DynaProperty(java.lang.String name,
                        java.lang.Class type)

  Construct a property of the specified data type.
  Parameters:
    `name` - Name of the property being described
    `type` - Java class representing the property data type

### DynaProperty

    public DynaProperty(java.lang.String name,
                        java.lang.Class type,
                        java.lang.Class contentType)

  Construct an indexed or mapped `DynaProperty` that supports (pseudo)-introspection of the content type.
  Parameters:
    `name` - Name of the property being described
    `type` - Java class representing the property data type
    `contentType` - Class that all indexed or mapped elements are instances of

Method Detail

### getName

    public java.lang.String getName()

  Get the name of this property.
  Returns:
    the name of the property

### getType

    public java.lang.Class getType()

  Gets the Java class representing the data type of the underlying property values.

  There are issues with serializing primitive class types on certain JVM versions (including java 1.3). Therefore, this field must not be serialized using the standard methods.

  Please leave this field as `transient`

  Returns:
    the property type

### getContentType

    public java.lang.Class getContentType()

  Gets the (optional) type of the indexed content for `DynaProperty`'s that support this feature.

  There are issues with serializing primitive class types on certain JVM versions (including java 1.3). Therefore, this field must not be serialized using the standard methods.

  Returns:
    the Class for the content type if this is an indexed `DynaProperty` and this feature is supported. Otherwise null.

### isIndexed

    public boolean isIndexed()

  Does this property represent an indexed value (ie an array or List)?
  Returns:
    `true` if the property is indexed (i.e. is a List or array), otherwise `false`

### isMapped

    public boolean isMapped()

  Does this property represent a mapped value (ie a Map)?
  Returns:
    `true` if the property is a Map otherwise `false`

### equals

    public boolean equals(java.lang.Object obj)

  Checks this instance against the specified Object for equality. Overrides the default refererence test for equality provided by `Object.equals(Object)`
  Overrides:
    `equals` in class `java.lang.Object`
  Parameters:
    `obj` - The object to compare to
  Returns:
    `true` if object is a dyna property with the same name type and content type, otherwise `false`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `java.lang.Object`
  Returns:
    the hashcode for this dyna property
  See Also:
    `Object.hashCode()`

### toString

    public java.lang.String toString()

  Return a String representation of this Object.
  Overrides:
    `toString` in class `java.lang.Object`
  Returns:
    a String representation of the dyna property

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2000-2007 The Apache Software Foundation. All Rights Reserved.