Package org.eclipse.gef.common.beans.property

# Class ReadOnlyMultisetPropertyBase<E>

java.lang.Object
org.eclipse.gef.common.beans.binding.MultisetExpression<E>
org.eclipse.gef.common.beans.property.ReadOnlyMultisetProperty<E>
org.eclipse.gef.common.beans.property.ReadOnlyMultisetPropertyBase<E>

Type Parameters:
  `E` - The element type of the `ObservableMultiset`.

All Implemented Interfaces:
  `Multiset<E>`, `Iterable<E>`, `Collection<E>`, `javafx.beans.Observable`, `javafx.beans.property.ReadOnlyProperty<ObservableMultiset<E>>`, `javafx.beans.value.ObservableObjectValue<ObservableMultiset<E>>`, `javafx.beans.value.ObservableValue<ObservableMultiset<E>>`, `ObservableMultisetValue<E>`, `ObservableMultiset<E>`

public abstract class ReadOnlyMultisetPropertyBase<E> extends ReadOnlyMultisetProperty<E>
Abstract base class for implementing a read-only `Property` wrapping an `ObservableMultiset`.

This class provides identical functionality for `Multiset` as `ReadOnlyMapPropertyBase` for `Map`, `ReadOnlySetPropertyBase` for `Set`, or `ReadOnlyListPropertyBase` for `List`.

## Property Summary

### Properties inherited from class org.eclipse.gef.common.beans.binding.MultisetExpression

`empty, size`

## Nested Class Summary

## Nested classes/interfaces inherited from interface com.google.common.collect.Multiset

`Multiset.Entry<E extends Object>`

## Constructor Summary

Constructors
Constructor
Description
`ReadOnlyMultisetPropertyBase()`

## Method Summary

Modifier and Type
Method
Description
`void`
`addListener(javafx.beans.InvalidationListener listener)`
`void`
`addListener(javafx.beans.value.ChangeListener<? super ObservableMultiset<E>> listener)`
`void`
`addListener(MultisetChangeListener<? super E> listener)`
Adds a `MultisetChangeListener` to this `ObservableMultiset`.
`protected void`
`fireValueChangedEvent()`
Fires notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `MultisetChangeListeners`.
`protected void`
`fireValueChangedEvent(MultisetChangeListener.Change<? extends E> change)`
Fires notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `MultisetChangeListeners`.
`void`
`removeListener(javafx.beans.InvalidationListener listener)`
`void`
`removeListener(javafx.beans.value.ChangeListener<? super ObservableMultiset<E>> listener)`
`void`
`removeListener(MultisetChangeListener<? super E> listener)`
Removes a `MultisetChangeListener` from this `ObservableMultiset`.

### Methods inherited from class org.eclipse.gef.common.beans.property.ReadOnlyMultisetProperty

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

### Methods inherited from class org.eclipse.gef.common.beans.binding.MultisetExpression

`add, add, addAll, asString, clear, contains, containsAll, count, elementSet, emptyProperty, entrySet, getValue, isEmpty, isEqualTo, isNotEqualTo, isNotNull, isNull, iterator, multisetExpression, remove, remove, removeAll, replaceAll, retainAll, setCount, setCount, size, sizeProperty, 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 com.google.common.collect.Multiset

`forEach, forEachEntry, spliterator`

### Methods inherited from interface javafx.beans.value.ObservableObjectValue

`get`

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

`getValue`

### Methods inherited from interface javafx.beans.property.ReadOnlyProperty

`getBean, getName`

## Constructor Details

### ReadOnlyMultisetPropertyBase

public ReadOnlyMultisetPropertyBase()

## Method Details

### addListener

public void addListener(javafx.beans.value.ChangeListener<? super ObservableMultiset<E>> listener)

### removeListener

public void removeListener(javafx.beans.value.ChangeListener<? super ObservableMultiset<E>> listener)

### addListener

public void addListener(javafx.beans.InvalidationListener listener)

### removeListener

public void removeListener(javafx.beans.InvalidationListener listener)

### 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.

Parameters:
  `listener` - The `MultisetChangeListener` to add.

### 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.

Parameters:
  `listener` - The `MultisetChangeListener` to remove.

### fireValueChangedEvent

protected void fireValueChangedEvent()
Fires notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `MultisetChangeListeners`.

### 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