Class UnionSet<E>

  • Type Parameters:
    E - type of the elements in the union set
    All Implemented Interfaces:
    Iterable<E>, Collection<E>, Set<E>, IObservable, IObservableCollection<E>, IObservableSet<E>

    public final class UnionSet<E>
    extends ObservableSet<E>
    Represents a set consisting of the union of elements from one or more other sets. This object does not need to be explicitly disposed. If nobody is listening to the UnionSet, the set will remove its listeners.

    This class is thread safe. All state accessing methods must be invoked from the current realm. Methods for adding and removing listeners may be invoked from any thread.

    Since:
    1.0
    • Constructor Detail

      • UnionSet

        public UnionSet​(IObservableSet<? extends E>[] childSets)
        Parameters:
        childSets -
      • UnionSet

        public UnionSet​(Set<IObservableSet<? extends E>> childSets)
        Parameters:
        childSets -
        Since:
        1.6
      • UnionSet

        public UnionSet​(IObservableSet<? extends E>[] childSets,
                        Object elementType)
        Parameters:
        childSets -
        elementType -
        Since:
        1.2
      • UnionSet

        public UnionSet​(Set<IObservableSet<? extends E>> childSets,
                        Object elementType)
        Parameters:
        childSets -
        elementType -
        Since:
        1.6
    • Method Detail

      • isStale

        public boolean isStale()
        Description copied from interface: IObservable
        Returns whether the state of this observable is stale and is expected to change soon. A non-stale observable that becomes stale will notify its stale listeners. A stale object that becomes non-stale does so by changing its state and notifying its change listeners, it does not notify its stale listeners about becoming non-stale. Clients that do not expect asynchronous changes may ignore staleness of observable objects.
        Specified by:
        isStale in interface IObservable
        Overrides:
        isStale in class ObservableSet<E>
        Returns:
        Returns the stale state.
      • firstListenerAdded

        protected void firstListenerAdded()
      • lastListenerRemoved

        protected void lastListenerRemoved()
      • addListener

        protected void addListener​(Object listenerType,
                                   IObservablesListener listener)
        Parameters:
        listenerType -
        listener -
      • removeListener

        protected void removeListener​(Object listenerType,
                                      IObservablesListener listener)
        Parameters:
        listenerType -
        listener -
      • hasListeners

        protected boolean hasListeners()
      • getRealm

        public Realm getRealm()
        Returns:
        Returns the realm.