Class MultisetBinding<E>

java.lang.Object
org.eclipse.gef.common.beans.binding.MultisetExpression<E>
org.eclipse.gef.common.beans.binding.MultisetBinding<E>
Type Parameters:
E - The element type of the ObservableMultiset.
All Implemented Interfaces:
Multiset<E>, Iterable<E>, Collection<E>, javafx.beans.binding.Binding<ObservableMultiset<E>>, javafx.beans.Observable, javafx.beans.value.ObservableObjectValue<ObservableMultiset<E>>, javafx.beans.value.ObservableValue<ObservableMultiset<E>>, ObservableMultisetValue<E>, ObservableMultiset<E>

public abstract class MultisetBinding<E> extends MultisetExpression<E> implements javafx.beans.binding.Binding<ObservableMultiset<E>>
An abstract base class that provides functionality needed to realize a Binding on an ObservableMultiset.

This class provides identical functionality for Multiset as MapBinding for Map, SetBinding for Set, or ListBinding for List.

  • Property Details

    • empty

      public javafx.beans.property.ReadOnlyBooleanProperty emptyProperty
      Specified by:
      emptyProperty in class MultisetExpression<E>
      Returns:
      A read-only property.
    • size

      public javafx.beans.property.ReadOnlyIntegerProperty sizeProperty
      Specified by:
      sizeProperty in class MultisetExpression<E>
      Returns:
      A read-only property.
  • Constructor Details

    • MultisetBinding

      public MultisetBinding()
  • Method Details

    • addListener

      public void addListener(javafx.beans.value.ChangeListener<? super ObservableMultiset<E>> listener)
      Specified by:
      addListener in interface javafx.beans.value.ObservableValue<E>
    • addListener

      public void addListener(javafx.beans.InvalidationListener listener)
      Specified by:
      addListener in interface javafx.beans.Observable
    • addListener

      public void addListener(MultisetChangeListener<? super E> listener)
      Description copied from interface: ObservableMultiset
      Adds a MultisetChangeListener to this ObservableMultiset. If the same listener is registered more than once, it will be notified more than once.
      Specified by:
      addListener in interface ObservableMultiset<E>
      Parameters:
      listener - The MultisetChangeListener to add.
    • bind

      protected void bind(javafx.beans.Observable... dependencies)
      Start observing the given dependencies for changes. If the value of one of the dependencies changes, the binding is marked as invalid.
      Parameters:
      dependencies - The dependencies to observe.
    • computeValue

      protected abstract ObservableMultiset<E> computeValue()
      Computes the current value of this MultisetBinding.
      Returns:
      The current value of this MultisetBinding.
    • dispose

      public void dispose()
      Specified by:
      dispose in interface javafx.beans.binding.Binding<E>
    • emptyProperty

      public javafx.beans.property.ReadOnlyBooleanProperty emptyProperty()
      Description copied from class: MultisetExpression
      A boolean property that reflects whether the Multiset is empty.
      Specified by:
      emptyProperty in class MultisetExpression<E>
      Returns:
      A read-only property.
    • fireValueChangedEvent

      protected void fireValueChangedEvent()
      Fires notifications to all attached InvalidationListeners, ChangeListeners, and SetMultimapChangeListeners.
    • fireValueChangedEvent

      protected void fireValueChangedEvent(MultisetChangeListener.Change<? extends E> change)
      Fires notifications to all attached InvalidationListeners, ChangeListeners, and MultisetChangeListeners.
      Parameters:
      change - the change that needs to be propagated
    • get

      public ObservableMultiset<E> get()
      Specified by:
      get in interface javafx.beans.value.ObservableObjectValue<E>
    • getDependencies

      public javafx.collections.ObservableList<?> getDependencies()
      Specified by:
      getDependencies in interface javafx.beans.binding.Binding<E>
    • invalidate

      public void invalidate()
      Specified by:
      invalidate in interface javafx.beans.binding.Binding<E>
    • invalidated

      protected void invalidated()
      Can be overwritten by subclasses to receive invalidation notifications. Does nothing by default.
    • isValid

      public boolean isValid()
      Specified by:
      isValid in interface javafx.beans.binding.Binding<E>
    • removeListener

      public void removeListener(javafx.beans.value.ChangeListener<? super ObservableMultiset<E>> listener)
      Specified by:
      removeListener in interface javafx.beans.value.ObservableValue<E>
    • removeListener

      public void removeListener(javafx.beans.InvalidationListener listener)
      Specified by:
      removeListener in interface javafx.beans.Observable
    • removeListener

      public void removeListener(MultisetChangeListener<? super E> listener)
      Description copied from interface: ObservableMultiset
      Removes a MultisetChangeListener from this ObservableMultiset. Will do nothing if the listener was not attached to this ObservableMultiset. If it was added more than once, then only the first occurrence will be removed.
      Specified by:
      removeListener in interface ObservableMultiset<E>
      Parameters:
      listener - The MultisetChangeListener to remove.
    • sizeProperty

      public javafx.beans.property.ReadOnlyIntegerProperty sizeProperty()
      Description copied from class: MultisetExpression
      An integer property that represents the size of the Multiset.
      Specified by:
      sizeProperty in class MultisetExpression<E>
      Returns:
      A read-only property.
    • unbind

      protected void unbind(javafx.beans.Observable... dependencies)
      Stops observing the dependencies for changes. The binding will no longer be marked as invalid if one of the dependencies changes.
      Parameters:
      dependencies - The dependencies to stop observing.