org.apache.tapestry5.beaneditor

## Interface PropertyModel

- All Superinterfaces:
    AnnotationProvider
  All Known Implementing Classes:
    PropertyModelImpl

      public interface PropertyModel
      extends AnnotationProvider

  Part of a `BeanModel` that defines the attributes of a single property of a bean. A PropertyModel is also an `AnnotationProvider`, as long as the `PropertyConduit` is non-null. When there is no property conduit, then `AnnotationProvider.getAnnotation(Class)` will return null.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `PropertyModel` | `dataType(String dataType)` Changes the data type for the property.
    `PropertyConduit` | `getConduit()` Returns an object used to read or update the property.
    `String` | `getDataType()` Returns a logical name for the type of UI needed to view or edit the property.
    `String` | `getId()` Returns the id used to access other resources (this is based on the property name, but with any excess punctuation stripped out).
    `String` | `getLabel()` Returns a user-presentable label for the property.
    `String` | `getPropertyName()` Returns the name of the property (which may, in fact, be a property expression).
    `Class` | `getPropertyType()` Returns the type of the property.
    `boolean` | `isSortable()` Returns true if the property can be used for sorting.
    `PropertyModel` | `label(String label)` Changes the label for the property to the provided value.
    `BeanModel` | `model()` Returns the containing model, often used for "fluent" construction of the model.
    `PropertyModel` | `sortable(boolean sortable)` Updates sortable and returns the model for further changes.

    - ### Methods inherited from interface org.apache.tapestry5.ioc.AnnotationProvider

      `getAnnotation`

- - ### Method Detail

    - #### getPropertyName

          String getPropertyName()

      Returns the name of the property (which may, in fact, be a property expression).

    - #### getId

          String getId()

      Returns the id used to access other resources (this is based on the property name, but with any excess punctuation stripped out).

    - #### getLabel

          String getLabel()

      Returns a user-presentable label for the property.

    - #### getPropertyType

          Class getPropertyType()

      Returns the type of the property.

    - #### getDataType

          String getDataType()

      Returns a logical name for the type of UI needed to view or edit the property. This is initially determined from the property type.

    - #### dataType

          PropertyModel dataType(String dataType)

      Changes the data type for the property.
      Parameters:
        `dataType` -
      Returns:
        the property model, for further changes

    - #### getConduit

          PropertyConduit getConduit()

      Returns an object used to read or update the property. For virtual properties (properties that do not actually exist on the bean), the conduit may be null.

    - #### label

          PropertyModel label(String label)

      Changes the label for the property to the provided value.
      Parameters:
        `label` - new label for property
      Returns:
        the property model, for further changes

    - #### model

          BeanModel model()

      Returns the containing model, often used for "fluent" construction of the model.

    - #### isSortable

          boolean isSortable()

      Returns true if the property can be used for sorting. By default, this is true only if the property type implements Comparable.

    - #### sortable

          PropertyModel sortable(boolean sortable)

      Updates sortable and returns the model for further changes.
      Returns:
        the property model, for further changes

${project.version} - Copyright © 2003-2015 The Apache Software Foundation.