Class DelegatingMapProperty<S,K,V>

java.lang.Object
org.eclipse.core.databinding.property.map.MapProperty<S,K,V>
org.eclipse.core.databinding.property.map.DelegatingMapProperty<S,K,V>
Type Parameters:
S - type of the source object
K - type of the keys to the map
V - type of the values in the map
All Implemented Interfaces:
IProperty, IMapProperty<S,K,V>

public abstract class DelegatingMapProperty<S,K,V> extends MapProperty<S,K,V>
Since:
1.2
  • Constructor Details

    • DelegatingMapProperty

      protected DelegatingMapProperty()
    • DelegatingMapProperty

      protected DelegatingMapProperty(Object keyType, Object valueType)
  • Method Details

    • getDelegate

      public final IMapProperty<S,K,V> getDelegate(S source)
      Returns the property to delegate to for the specified source object. Repeated calls to this method with the same source object returns the same delegate instance.
      Parameters:
      source - the property source (may be null)
      Returns:
      the property to delegate to for the specified source object.
    • doGetDelegate

      protected abstract IMapProperty<S,K,V> doGetDelegate(S source)
      Returns the property to delegate to for the specified source object. Implementers must ensure that repeated calls to this method with the same source object returns the same delegate instance.
      Parameters:
      source - the property source
      Returns:
      the property to delegate to for the specified source object.
    • getKeyType

      public Object getKeyType()
      Description copied from interface: IMapProperty
      Returns the element type of the map's key set or null if the key set is untyped.
      Returns:
      the element type of the map's key set or null if the key set is untyped.
    • getValueType

      public Object getValueType()
      Description copied from interface: IMapProperty
      Returns the element type of the map's values collection or null if the collection is untyped.
      Returns:
      the element type of the map's values collection or null if the collection is untyped.
    • doGetMap

      protected Map<K,V> doGetMap(S source)
      Description copied from class: MapProperty
      Returns a Map with the current contents of the source's map property
      Overrides:
      doGetMap in class MapProperty<S,K,V>
      Parameters:
      source - the property source
      Returns:
      a Map with the current contents of the source's map property
    • doSetMap

      protected void doSetMap(S source, Map<K,V> map)
      Description copied from class: MapProperty
      Updates the property on the source with the specified change.
      Overrides:
      doSetMap in class MapProperty<S,K,V>
      Parameters:
      source - the property source
      map - the new map
    • doUpdateMap

      protected void doUpdateMap(S source, MapDiff<K,V> diff)
      Description copied from class: MapProperty
      Updates the property on the source with the specified change.
      Overrides:
      doUpdateMap in class MapProperty<S,K,V>
      Parameters:
      source - the property source
      diff - a diff describing the change
    • observe

      public IObservableMap<K,V> observe(S source)
      Description copied from interface: IMapProperty
      Returns an observable map observing this map property on the given property source
      Specified by:
      observe in interface IMapProperty<S,K,V>
      Overrides:
      observe in class MapProperty<S,K,V>
      Parameters:
      source - the property source
      Returns:
      an observable map observing this map-typed property on the given property source
    • observe

      public IObservableMap<K,V> observe(Realm realm, S source)
      Description copied from interface: IMapProperty
      Returns an observable map observing this map property on the given property source
      Parameters:
      realm - the observable's realm
      source - the property source
      Returns:
      an observable map observing this map-typed property on the given property source