com.holonplatform.core.property

## Interface CollectionProperty.Builder<E,C extends Collection<E>,P extends CollectionProperty<E,C>,B extends CollectionProperty.Builder<E,C,P,B>>

- Type Parameters:
    `E` - Collection elements type
    `C` - Concrete collection type
    `P` - Concrete property type
    `B` - Concrete builder type
  All Superinterfaces:
    Localizable.Builder<B>, Property.Builder<C,P,B>
  All Known Subinterfaces:
    CollectionPathProperty.Builder<E,C,P,B>, ListPathProperty.ListPathPropertyBuilder<T>, ListVirtualProperty.ListVirtualPropertyBuilder<T>, SetPathProperty.SetPathPropertyBuilder<T>, SetVirtualProperty.SetVirtualPropertyBuilder<T>
  Enclosing interface:
    CollectionProperty<E,C extends Collection<E>>

      public static interface CollectionProperty.Builder<E,C extends Collection<E>,P extends CollectionProperty<E,C>,B extends CollectionProperty.Builder<E,C,P,B>>
      extends Property.Builder<C,P,B>

  Base `CollectionProperty` builder.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `<MODEL> B` | `elementConverter(Class<MODEL> modelElementType, Function<MODEL,E> fromModel, Function<E,MODEL> toModel)` Configure a `PropertyValueConverter` for the collection type property using the provided functions to perform the conversion operations for each collection element.
    `<MODEL> B` | `elementConverter(PropertyValueConverter<E,MODEL> elementConverter)` Configure a property value converter for the collection type property using the provided `PropertyValueConverter` to perform the conversion operations for each collection element.

    - ### Methods inherited from interface com.holonplatform.core.property.Property.Builder

      `configuration, configuration, converter, converter, equalsHandler, hashCodeProvider, localization, temporalType, validator, withConfiguration, withConfiguration, withValidator`

    - ### Methods inherited from interface com.holonplatform.core.i18n.Localizable.Builder

      `message, message, messageArguments, messageCode`

- - ### Method Detail

    - #### elementConverter

          <MODEL> B elementConverter(Class<MODEL> modelElementType,
                                     Function<MODEL,E> fromModel,
                                     Function<E,MODEL> toModel)

      Configure a `PropertyValueConverter` for the collection type property using the provided functions to perform the conversion operations for each collection element.
      Type Parameters:
        `MODEL` - Model element type
      Parameters:
        `modelElementType` - Model element type
        `fromModel` - Function to convert a collection element from the model type to the collection property element type
        `toModel` - Function to convert a collection element from the collection property element type to model type
      Returns:
        this

    - #### elementConverter

          <MODEL> B elementConverter(PropertyValueConverter<E,MODEL> elementConverter)

      Configure a property value converter for the collection type property using the provided `PropertyValueConverter` to perform the conversion operations for each collection element.
      Type Parameters:
        `MODEL` - Model element type
      Parameters:
        `elementConverter` - Collection element converter (not null)
      Returns:
        this

Copyright © 2019 The Holon Platform. All rights reserved.