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

# Class SetMultimapPropertyBase<K,V>

java.lang.Object
org.eclipse.gef.common.beans.binding.SetMultimapExpression<K,V>
org.eclipse.gef.common.beans.property.ReadOnlySetMultimapProperty<K,V>
org.eclipse.gef.common.beans.property.SetMultimapProperty<K,V>
org.eclipse.gef.common.beans.property.SetMultimapPropertyBase<K,V>

Type Parameters:
  `K` - The key type of the wrapped `ObservableSetMultimap`.
  `V` - The value type of the wrapped `ObservableSetMultimap`.

All Implemented Interfaces:
  `Multimap<K,V>`, `SetMultimap<K,V>`, `javafx.beans.Observable`, `javafx.beans.property.Property<ObservableSetMultimap<K,V>>`, `javafx.beans.property.ReadOnlyProperty<ObservableSetMultimap<K,V>>`, `javafx.beans.value.ObservableObjectValue<ObservableSetMultimap<K,V>>`, `javafx.beans.value.ObservableValue<ObservableSetMultimap<K,V>>`, `javafx.beans.value.WritableObjectValue<ObservableSetMultimap<K,V>>`, `javafx.beans.value.WritableValue<ObservableSetMultimap<K,V>>`, `ObservableSetMultimapValue<K,V>`, `WritableSetMultimapValue<K,V>`, `ObservableSetMultimap<K,V>`

Direct Known Subclasses:
  `SimpleSetMultimapProperty`

public abstract class SetMultimapPropertyBase<K,V> extends SetMultimapProperty<K,V>
Abstract base class for implementing a `Property` wrapping an `ObservableSetMultimap`.

This class provides identical functionality for `SetMultimap` as `MapPropertyBase` for `Map`, `SetPropertyBase` for `Set`, or `ListPropertyBase` for `List`.

## Property Summary

Properties
Type
Property
Description
`javafx.beans.property.ReadOnlyBooleanProperty`
`empty`
A boolean property that reflects whether the `SetMultimap` is empty.
`javafx.beans.property.ReadOnlyIntegerProperty`
`size`
An integer property that represents the size of the `SetMultimap`.

## Constructor Summary

Constructors
Constructor
Description
`SetMultimapPropertyBase()`
Creates a new `SetMultimapPropertyBase` with no initial value.
`SetMultimapPropertyBase(ObservableSetMultimap<K,V> initialValue)`
Creates a new `SetMultimapPropertyBase` with the given `ObservableSetMultimap` as initial value.

## Method Summary

Modifier and Type
Method
Description
`void`
`addListener(javafx.beans.InvalidationListener listener)`
`void`
`addListener(javafx.beans.value.ChangeListener<? super ObservableSetMultimap<K,V>> listener)`
`void`
`addListener(SetMultimapChangeListener<? super K,? super V> listener)`
Adds a `SetMultimapChangeListener` to this `ObservableSetMultimap`.
`protected void`
`appendValueToString(StringBuilder result)`
Appends a representation of this `SetMultimapProperty`'s value to the given `StringBuilder`.
`void`
`bind(javafx.beans.value.ObservableValue<? extends ObservableSetMultimap<K,V>> observedValue)`
`javafx.beans.property.ReadOnlyBooleanProperty`
`emptyProperty()`
A boolean property that reflects whether the `SetMultimap` is empty.
`protected void`
`fireValueChangedEvent()`
Fires notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `SetMultimapChangeListeners`.
`protected void`
`fireValueChangedEvent(SetMultimapChangeListener.Change<? extends K,? extends V> change)`
Fires notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `SetMultimapChangeListeners`.
`ObservableSetMultimap<K,V>`
`get()`
`protected void`
`invalidated()`
Can be overwritten by subclasses to receive invalidation notifications.
`boolean`
`isBound()`
`void`
`removeListener(javafx.beans.InvalidationListener listener)`
`void`
`removeListener(javafx.beans.value.ChangeListener<? super ObservableSetMultimap<K,V>> listener)`
`void`
`removeListener(SetMultimapChangeListener<? super K,? super V> listener)`
Removes a `SetMultimapChangeListener` from this `ObservableSetMultimap`.
`void`
`set(ObservableSetMultimap<K,V> newValue)`
`javafx.beans.property.ReadOnlyIntegerProperty`
`sizeProperty()`
An integer property that represents the size of the `SetMultimap`.
`void`
`unbind()`

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

`bindBidirectional, setValue, unbindBidirectional`

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

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

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

`asMap, asString, clear, containsEntry, containsKey, containsValue, entries, get, getValue, isEmpty, isEqualTo, isNotEqualTo, isNotNull, isNull, keys, keySet, put, putAll, putAll, remove, removeAll, replaceAll, replaceValues, setMultimapExpression, size, values, valuesAt, valuesAt`

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

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

### Methods inherited from interface com.google.common.collect.Multimap

`clear, containsEntry, containsKey, containsValue, forEach, hashCode, isEmpty, keys, keySet, put, putAll, putAll, remove, size, values`

### Methods inherited from interface org.eclipse.gef.common.collections.ObservableSetMultimap

`replaceAll`

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

`getValue`

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

`getBean, getName`

### Methods inherited from interface com.google.common.collect.SetMultimap

`asMap, entries, equals, get, removeAll, replaceValues`

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

`getValue`

## Property Details

### empty

public javafx.beans.property.ReadOnlyBooleanProperty emptyProperty

Specified by:
  `emptyProperty` in class `SetMultimapExpression<K,V>`
See Also:
  - `SetMultimapExpression.isEmpty()`

### size

public javafx.beans.property.ReadOnlyIntegerProperty sizeProperty

Specified by:
  `sizeProperty` in class `SetMultimapExpression<K,V>`

## Constructor Details

### SetMultimapPropertyBase

public SetMultimapPropertyBase()
Creates a new `SetMultimapPropertyBase` with no initial value.

### SetMultimapPropertyBase

public SetMultimapPropertyBase(ObservableSetMultimap<K,V> initialValue)
Creates a new `SetMultimapPropertyBase` with the given `ObservableSetMultimap` as initial value.

Parameters:
  `initialValue` - The initial value of the to be created `SetMultimapPropertyBase`.

## Method Details

### addListener

public void addListener(javafx.beans.value.ChangeListener<? super ObservableSetMultimap<K,V>> listener)

### addListener

public void addListener(javafx.beans.InvalidationListener listener)

### addListener

public void addListener(SetMultimapChangeListener<? super K,? super V> listener)
Description copied from interface: `ObservableSetMultimap`
Adds a `SetMultimapChangeListener` to this `ObservableSetMultimap`. If the same listener is registered more than once, it will be notified more than once.

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

### appendValueToString

protected void appendValueToString(StringBuilder result)
Description copied from class: `ReadOnlySetMultimapProperty`
Appends a representation of this `SetMultimapProperty`'s value to the given `StringBuilder`. Gets called from `ReadOnlySetMultimapProperty.toString()` to allow subclasses to provide a changed value representation.

Overrides:
  `appendValueToString` in class `ReadOnlySetMultimapProperty<K,V>`
Parameters:
  `result` - A `StringBuilder` to append the value representation to.

### bind

public void bind(javafx.beans.value.ObservableValue<? extends ObservableSetMultimap<K,V>> observedValue)

### emptyProperty

public javafx.beans.property.ReadOnlyBooleanProperty emptyProperty()
Description copied from class: `SetMultimapExpression`
A boolean property that reflects whether the `SetMultimap` is empty.

Specified by:
  `emptyProperty` in class `SetMultimapExpression<K,V>`
See Also:
  - `SetMultimapExpression.isEmpty()`

### fireValueChangedEvent

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

### fireValueChangedEvent

protected void fireValueChangedEvent(SetMultimapChangeListener.Change<? extends K,? extends V> change)
Fires notifications to all attached `InvalidationListeners`, `ChangeListeners`, and `SetMultimapChangeListeners`.

Parameters:
  `change` - the change that needs to be propagated

### get

public ObservableSetMultimap<K,V> get()

### invalidated

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

### isBound

public boolean isBound()

### removeListener

public void removeListener(javafx.beans.value.ChangeListener<? super ObservableSetMultimap<K,V>> listener)

### removeListener

public void removeListener(javafx.beans.InvalidationListener listener)

### removeListener

public void removeListener(SetMultimapChangeListener<? super K,? super V> listener)
Description copied from interface: `ObservableSetMultimap`
Removes a `SetMultimapChangeListener` from this `ObservableSetMultimap`. Will do nothing if the listener was not attached to this `ObservableSetMultimap`. If it was added more than once, then only the first occurrence will be removed.

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

### set

public void set(ObservableSetMultimap<K,V> newValue)

### sizeProperty

public javafx.beans.property.ReadOnlyIntegerProperty sizeProperty()
Description copied from class: `SetMultimapExpression`
An integer property that represents the size of the `SetMultimap`.

Specified by:
  `sizeProperty` in class `SetMultimapExpression<K,V>`

### unbind

public void unbind()