Module javafx.base
Package javafx.beans.property

## Class ReadOnlySetWrapper<E>

- java.lang.Object
- - javafx.beans.binding.SetExpression<E>
  - - javafx.beans.property.ReadOnlySetProperty<E>
    - - javafx.beans.property.SetProperty<E>
      - - javafx.beans.property.SetPropertyBase<E>
        - - javafx.beans.property.SimpleSetProperty<E>
          - - javafx.beans.property.ReadOnlySetWrapper<E>

- All Implemented Interfaces:
    `Iterable<E>`, `Collection<E>`, `Set<E>`, `Observable`, `Property<ObservableSet<E>>`, `ReadOnlyProperty<ObservableSet<E>>`, `ObservableObjectValue<ObservableSet<E>>`, `ObservableSetValue<E>`, `ObservableValue<ObservableSet<E>>`, `WritableObjectValue<ObservableSet<E>>`, `WritableSetValue<E>`, `WritableValue<ObservableSet<E>>`, `ObservableSet<E>`

      public class ReadOnlySetWrapper<E>
      extends SimpleSetProperty<E>

  This class provides a convenient class to define read-only properties. It creates two properties that are synchronized. One property is read-only and can be passed to external users. The other property is read- and writable and should be used internally only.
  Since:
    JavaFX 2.1

- - ### Property Summary

    - ### Properties inherited from class javafx.beans.property.SetPropertyBase

      `empty, size`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ReadOnlySetWrapper()` | The constructor of `ReadOnlySetWrapper`
    `ReadOnlySetWrapper​(Object bean, String name)` | The constructor of `ReadOnlySetWrapper`
    `ReadOnlySetWrapper​(Object bean, String name, ObservableSet<E> initialValue)` | The constructor of `ReadOnlySetWrapper`
    `ReadOnlySetWrapper​(ObservableSet<E> initialValue)` | The constructor of `ReadOnlySetWrapper`

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `fireValueChangedEvent()` | Sends notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `SetChangeListener`.
    `protected void` | `fireValueChangedEvent​(SetChangeListener.Change<? extends E> change)` | Sends notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `SetChangeListener`.
    `ReadOnlySetProperty<E>` | `getReadOnlyProperty()` | Returns the readonly property, that is synchronized with this `ReadOnlySetWrapper`.

    - ### Methods inherited from class javafx.beans.property.SimpleSetProperty

      `getBean, getName`

    - ### Methods inherited from class javafx.beans.property.SetPropertyBase

      `addListener, addListener, addListener, bind, emptyProperty, get, invalidated, isBound, removeListener, removeListener, removeListener, set, sizeProperty, toString, unbind`

    - ### Methods inherited from class javafx.beans.property.SetProperty

      `bindBidirectional, setValue, unbindBidirectional`

    - ### Methods inherited from class javafx.beans.property.ReadOnlySetProperty

      `bindContent, bindContentBidirectional, equals, hashCode, unbindContent, unbindContentBidirectional`

    - ### Methods inherited from class javafx.beans.binding.SetExpression

      `add, addAll, asString, clear, contains, containsAll, getSize, getValue, isEmpty, isEqualTo, isNotEqualTo, isNotNull, isNull, iterator, remove, removeAll, retainAll, setExpression, size, toArray, toArray`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.util.Collection

      `parallelStream, removeIf, stream, toArray`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach`

    - ### Methods inherited from interface javafx.beans.value.ObservableValue

      `getValue`

    - ### Methods inherited from interface java.util.Set

      `add, addAll, clear, contains, containsAll, equals, hashCode, isEmpty, iterator, remove, removeAll, retainAll, size, spliterator, toArray, toArray`

    - ### Methods inherited from interface javafx.beans.value.WritableValue

      `getValue`

- - ### Constructor Detail

    - #### ReadOnlySetWrapper

          public ReadOnlySetWrapper()

      The constructor of `ReadOnlySetWrapper`

    - #### ReadOnlySetWrapper

          public ReadOnlySetWrapper​(ObservableSet<E> initialValue)

      The constructor of `ReadOnlySetWrapper`
      Parameters:
        `initialValue` - the initial value of the wrapped value

    - #### ReadOnlySetWrapper

          public ReadOnlySetWrapper​(Object bean,
                                    String name)

      The constructor of `ReadOnlySetWrapper`
      Parameters:
        `bean` - the bean of this `ReadOnlySetWrapper`
        `name` - the name of this `ReadOnlySetWrapper`

    - #### ReadOnlySetWrapper

          public ReadOnlySetWrapper​(Object bean,
                                    String name,
                                    ObservableSet<E> initialValue)

      The constructor of `ReadOnlySetWrapper`
      Parameters:
        `bean` - the bean of this `ReadOnlySetWrapper`
        `name` - the name of this `ReadOnlySetWrapper`
        `initialValue` - the initial value of the wrapped value

  - ### Method Detail

    - #### getReadOnlyProperty

          public ReadOnlySetProperty<E> getReadOnlyProperty()

      Returns the readonly property, that is synchronized with this `ReadOnlySetWrapper`.
      Returns:
        the readonly property

    - #### fireValueChangedEvent

          protected void fireValueChangedEvent()

      Sends notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `SetChangeListener`. This method is called when the value is changed, either manually by calling `SetPropertyBase.set(javafx.collections.ObservableSet)` or in case of a bound property, if the binding becomes invalid.
      Overrides:
        `fireValueChangedEvent` in class `SetPropertyBase<E>`

    - #### fireValueChangedEvent

          protected void fireValueChangedEvent​(SetChangeListener.Change<? extends E> change)

      Sends notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `SetChangeListener`. This method is called when the content of the list changes.
      Overrides:
        `fireValueChangedEvent` in class `SetPropertyBase<E>`
      Parameters:
        `change` - the change that needs to be propagated