Module javafx.base
Package javafx.beans.property

## Class ReadOnlyListWrapper<E>

- java.lang.Object
- - javafx.beans.binding.ListExpression<E>
  - - javafx.beans.property.ReadOnlyListProperty<E>
    - - javafx.beans.property.ListProperty<E>
      - - javafx.beans.property.ListPropertyBase<E>
        - - javafx.beans.property.SimpleListProperty<E>
          - - javafx.beans.property.ReadOnlyListWrapper<E>

- All Implemented Interfaces:
    `Iterable<E>`, `Collection<E>`, `List<E>`, `Observable`, `Property<ObservableList<E>>`, `ReadOnlyProperty<ObservableList<E>>`, `ObservableListValue<E>`, `ObservableObjectValue<ObservableList<E>>`, `ObservableValue<ObservableList<E>>`, `WritableListValue<E>`, `WritableObjectValue<ObservableList<E>>`, `WritableValue<ObservableList<E>>`, `ObservableList<E>`

      public class ReadOnlyListWrapper<E>
      extends SimpleListProperty<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.ListPropertyBase

      `empty, size`

  - ### Constructor Summary

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

  - ### Method Summary

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

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

      `getBean, getName`

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

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

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

      `bindBidirectional, setValue, unbindBidirectional`

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

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

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

      `add, add, addAll, addAll, addAll, asString, clear, contains, containsAll, get, getSize, getValue, indexOf, isEmpty, isEqualTo, isNotEqualTo, isNotNull, isNull, iterator, lastIndexOf, listExpression, listIterator, listIterator, remove, remove, remove, removeAll, removeAll, retainAll, retainAll, set, setAll, setAll, size, subList, toArray, toArray, valueAt, valueAt`

    - ### 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 java.util.List

      `add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray`

    - ### Methods inherited from interface javafx.collections.ObservableList

      `addAll, filtered, remove, removeAll, retainAll, setAll, setAll, sorted, sorted`

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

      `getValue`

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

      `getValue`

- - ### Constructor Detail

    - #### ReadOnlyListWrapper

          public ReadOnlyListWrapper()

      The constructor of `ReadOnlyListWrapper`

    - #### ReadOnlyListWrapper

          public ReadOnlyListWrapper​(ObservableList<E> initialValue)

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

    - #### ReadOnlyListWrapper

          public ReadOnlyListWrapper​(Object bean,
                                     String name)

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

    - #### ReadOnlyListWrapper

          public ReadOnlyListWrapper​(Object bean,
                                     String name,
                                     ObservableList<E> initialValue)

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

  - ### Method Detail

    - #### getReadOnlyProperty

          public ReadOnlyListProperty<E> getReadOnlyProperty()

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

    - #### fireValueChangedEvent

          protected void fireValueChangedEvent()

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

    - #### fireValueChangedEvent

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

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