# Package com.holonplatform.core.property

- Interface Summary
  Interface | Description
  --- | ---
  BooleanProperty | A boolean type `PathProperty`.
  BooleanProperty.BooleanPropertyBuilder | `BooleanProperty` builder.
  CloneableProperty<T,P extends Property<T>,B extends Property.Builder<T,P,?>> | Declares a `Property` as cloneable.
  CloneableProperty.CloneablePathProperty<T,P extends Property<T> & Path<T>> | A `Path` type `CloneableProperty`.
  CollectionPathProperty<E,C extends Collection<E>> | A `CollectionProperty` type `PathProperty`.
  CollectionPathProperty.Builder<E,C extends Collection<E>,P extends CollectionPathProperty<E,C>,B extends CollectionPathProperty.Builder<E,C,P,B>> | Base `CollectionPathProperty` builder.
  CollectionProperty<E,C extends Collection<E>> | A `Property` which handles a `Collection` of values.
  CollectionProperty.Builder<E,C extends Collection<E>,P extends CollectionProperty<E,C>,B extends CollectionProperty.Builder<E,C,P,B>> | Base `CollectionProperty` builder.
  CollectionProperty.ListProperty<T> | A `CollectionProperty` which uses a `List` as concrete collection type.
  CollectionProperty.SetProperty<T> | A `CollectionProperty` which uses a `Set` as concrete collection type.
  CollectionPropertyValueConverter<TYPE,C extends Collection<TYPE>,MODEL> | A `PropertyValueConverter` to handle `Collection` property and model type values.
  ListPathProperty<T> | A `CollectionPathProperty` which uses a `List` as concrete collection type.
  ListPathProperty.ListPathPropertyBuilder<T> | `ListPathProperty` builder.
  ListVirtualProperty<T> | A collection type `VirtualProperty` using a `List` as concrete collection type.
  ListVirtualProperty.ListVirtualPropertyBuilder<T> | `ListVirtualProperty.ListVirtualPropertyBuilder` builder.
  NumericProperty<N extends Number> | A numeric type `PathProperty`.
  NumericProperty.NumericPropertyBuilder<N extends Number> | `NumericProperty` builder.
  PathProperty<T> | A `Property` bound to a `Path`, using `Path.getName()` as property name.
  PathProperty.Builder<T,P extends Path<T> & Property<T>,B extends PathProperty.Builder<T,P,B>> | Base interface for `Path` and `Property` builders.
  PathProperty.PathPropertyBuilder<T> | `PathProperty` builder.
  PathPropertyBoxAdapter | Adapter to use `Path` expressions to inspect and set `PropertyBox` values.
  PathPropertyBoxAdapter.PathPropertyBoxAdapterBuilder | Default builder.
  PathPropertySetAdapter | Adapter to use `Path` expressions to inspect a `PropertySet`.
  PathPropertySetAdapter.Builder<B extends PathPropertySetAdapter.Builder<B,A>,A extends PathPropertySetAdapter> | `PathPropertySetAdapter` builder.
  PathPropertySetAdapter.PathConverter | Converter to obtain a `Path` from a `Property`.
  PathPropertySetAdapter.PathMatcher | Function to implement a `Path` matching strategy.
  PathPropertySetAdapter.PathPropertySetAdapterBuilder | Default builder.
  PathPropertySetAdapter.PropertyPath<T> | `Property` and corresponding `Path` pair representation.
  Property<T> | Property is the base interface to represent a generic data attribute.
  Property.Builder<T,P extends Property<T>,B extends Property.Builder<T,P,B>> | Base `Property` builder.
  PropertyBox | PropertyBox is the base container for `Property` values, provinding methods to get and set property values, performing value validation and conversions according to property configurations.
  PropertyBox.Builder | Builder to build `PropertyBox` instances.
  PropertyBox.PropertyValue<T> | Represents a `Property` value.
  PropertyBoxProperty | A `PropertyBox` type `PathProperty`.
  PropertyBoxProperty.PropertyBoxPropertyBuilder | `PropertyBoxProperty` builder.
  PropertyConfiguration | `Property` configuration parameters.
  PropertyConfiguration.PropertyConfigurationEditor | `PropertyConfiguration` editor interface to provide configuration parameters management.
  PropertyRenderer<R,T> | Renderer to render a `Property` as a the target `PropertyRenderer.getRenderType()` object type.
  PropertyRendererRegistry | A registry to register `PropertyRenderer`s bound to a condition and provide a suitable `PropertyRenderer` for a given `Property` and rendering type.
  PropertySet<P extends Property> | This interface represent an `Iterable` and immutable set of `Property`s.
  PropertySet.Builder<P extends Property> | Builder to create `PropertySet` instances.
  PropertyValueConverter<TYPE,MODEL> | Performs conversion between a `Property` type and a data model type, in both directions.
  PropertyValuePresenter<T> | Presenter to obtain the value of a `Property` as a `String`.
  PropertyValuePresenterRegistry | A registry to register `PropertyValuePresenter`s bound to a condition and provide a suitable `PropertyValuePresenter`.
  PropertyValueProvider<T> | Interface to represent a class which act as provider for `Property` value.
  SetPathProperty<T> | A `CollectionPathProperty` which uses a `Set` as concrete collection type.
  SetPathProperty.SetPathPropertyBuilder<T> | `SetPathProperty` builder.
  SetVirtualProperty<T> | A collection type `VirtualProperty` using a `Set` as concrete collection type.
  SetVirtualProperty.SetVirtualPropertyBuilder<T> | `SetVirtualProperty` builder.
  StringProperty | A String type `PathProperty`.
  StringProperty.StringPropertyBuilder | `StringProperty` builder.
  TemporalProperty<T> | A temporal type `PathProperty`.
  TemporalProperty.TemporalPropertyBuilder<T> | `TemporalProperty` builder.
  VirtualProperty<T> | A virtual `Property` which relies on a `PropertyValueProvider` to provide its value, and it is not directly bound to a data model attribute.
  VirtualProperty.Builder<T,P extends VirtualProperty<T>,B extends VirtualProperty.Builder<T,P,B>> | Base `VirtualProperty` builder.
  VirtualProperty.VirtualPropertyBuilder<T> | Default `VirtualProperty` builder.

- Exception Summary
  Exception | Description
  --- | ---
  Property.PropertyAccessException | Base exception class to all `Property` related exceptions.
  Property.PropertyNotFoundException | Exception thrown when a property is not found in a property set.
  Property.PropertyReadException | Generic exception thrown for property value reading failures.
  Property.PropertyReadOnlyException | Exception thrown when trying to set a value for a read-only property.
  Property.PropertyWriteException | Generic exception thrown for property value writing failures.
  PropertyRendererRegistry.NoSuitableRendererAvailableException | Exception thrown a suitable `PropertyRenderer` is not available for a given `Property` and rendering type
  PropertyValueConverter.PropertyConversionException | Exception thrown when a property value conversion fails.

- Annotation Types Summary
  Annotation Type | Description
  --- | ---
  PropertySetRef | Annotation which can be used to declare the reference to a `PropertySet` instance.

Copyright © 2019 The Holon Platform. All rights reserved.