Package org.eclipse.core.databinding.observable.map

# Class BidirectionalMap<K,V>

java.lang.Object
org.eclipse.core.databinding.observable.AbstractObservable
org.eclipse.core.databinding.observable.map.ObservableMap<K,V>
org.eclipse.core.databinding.observable.map.BidirectionalMap<K,V>

Type Parameters:
  `K` - type of the keys to the map
  `V` - type of the values in the map

All Implemented Interfaces:
  `Map<K,V>`, `IObservable`, `IObservableMap<K,V>`

@Deprecated public class BidirectionalMap<K,V> extends ObservableMap<K,V>
Deprecated.
This class is deprecated; use `BidiObservableMap` instead.

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

## Nested Class Summary

## Nested classes/interfaces inherited from interface java.util.Map

`Map.Entry<K extends Object,V extends Object>`

## Field Summary

### Fields inherited from class org.eclipse.core.databinding.observable.map.ObservableMap

`wrappedMap`

## Constructor Summary

Constructors
Constructor
Description
`BidirectionalMap(IObservableMap<K,V> wrappedMap)`
Deprecated.

## Method Summary

Modifier and Type
Method
Description
`protected void`
`addListener(Object listenerType, IObservablesListener listener)`
`protected Object`
`clone()`
`protected void`
`fireEvent(ObservableEvent event)`
`protected void`
`firstListenerAdded()`
`Realm`
`getRealm()`
`protected boolean`
`hasListeners()`
`protected void`
`lastListenerRemoved()`
`protected void`
`removeListener(Object listenerType, IObservablesListener listener)`

### Methods inherited from class org.eclipse.core.databinding.observable.map.ObservableMap

`addMapChangeListener, clear, containsKey, containsValue, entrySet, equals, fireMapChange, get, getKeyType, getterCalled, getValueType, hashCode, isEmpty, isStale, keySet, put, putAll, remove, removeMapChangeListener, setStale, size, values`

### Methods inherited from class org.eclipse.core.databinding.observable.AbstractObservable

`addChangeListener, addDisposeListener, addStaleListener, checkRealm, dispose, fireChange, fireStale, isDisposed, removeChangeListener, removeDisposeListener, removeStaleListener`

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

`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.eclipse.core.databinding.observable.IObservable

`addChangeListener, addDisposeListener, addStaleListener, dispose, getRealm, isDisposed, removeChangeListener, removeDisposeListener, removeStaleListener`

### Methods inherited from interface java.util.Map

`compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll`

## Constructor Details

### BidirectionalMap

public BidirectionalMap(IObservableMap<K,V> wrappedMap)
Deprecated.

Parameters:
  `wrappedMap` - backing store for the map data, used to implement all map operations

## Method Details

### addListener

protected void addListener(Object listenerType, IObservablesListener listener)

Parameters:
  `listenerType` - arbitrary object to identify a type of the listener
  `listener` - the listener to add; not `null`

### removeListener

protected void removeListener(Object listenerType, IObservablesListener listener)

Parameters:
  `listenerType` - arbitrary object to identify a type of the listener
  `listener` - the listener to remove; not `null`

### hasListeners

protected boolean hasListeners()

### fireEvent

protected void fireEvent(ObservableEvent event)

### firstListenerAdded

protected void firstListenerAdded()

### lastListenerRemoved

protected void lastListenerRemoved()

### getRealm

public Realm getRealm()

Returns:
  Returns the realm.

### clone

protected Object clone() throws CloneNotSupportedException

Overrides:
  `clone` in class `Object`
Throws:
  `CloneNotSupportedException`