com.holonplatform.core.property

## Interface PropertySet.Builder<P extends Property>

- Type Parameters:
    `P` - Concrete type of the properties contained in the set
  Enclosing interface:
    PropertySet<P extends Property>

      public static interface PropertySet.Builder<P extends Property>

  Builder to create `PropertySet` instances.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `<PT extends P> PropertySet.Builder<P>` | `add(Iterable<PT> properties)` Add all the properties provided by given `Iterable` to the set.
    `<PT extends P> PropertySet.Builder<P>` | `add(PT property)` Add a property to the set.
    `PropertySet<P>` | `build()` Build `PropertySet` instance
    `<PT extends P> PropertySet.Builder<P>` | `remove(Iterable<PT> properties)` Remove all the properties provided by given `Iterable` from the set.
    `<PT extends P> PropertySet.Builder<P>` | `remove(PT property)` Remove a property from the set.

- - ### Method Detail

    - #### add

          <PT extends P> PropertySet.Builder<P> add(PT property)

      Add a property to the set.
      Type Parameters:
        `PT` - Actual property type
      Parameters:
        `property` - The property to add (not null)
      Returns:
        this

    - #### add

          <PT extends P> PropertySet.Builder<P> add(Iterable<PT> properties)

      Add all the properties provided by given `Iterable` to the set.
      Type Parameters:
        `PT` - Actual property type
      Parameters:
        `properties` - Properties `Iterable` to add (not null)
      Returns:
        this

    - #### remove

          <PT extends P> PropertySet.Builder<P> remove(PT property)

      Remove a property from the set.
      Type Parameters:
        `PT` - Actual property type
      Parameters:
        `property` - The property to remove (not null)
      Returns:
        this

    - #### remove

          <PT extends P> PropertySet.Builder<P> remove(Iterable<PT> properties)

      Remove all the properties provided by given `Iterable` from the set.
      Type Parameters:
        `PT` - Actual property type
      Parameters:
        `properties` - Properties `Iterable` to remove (not null)
      Returns:
        this

    - #### build

          PropertySet<P> build()

      Build `PropertySet` instance
      Returns:
        PropertySet instance

Copyright © 2017 The Holon Platform. All rights reserved.