org.eclipse.core.databinding.property

## Class Properties

- java.lang.Object
- - org.eclipse.core.databinding.property.Properties

    public class Properties
    extends Object

Contains static methods to operate on or return IProperty objects.

Since:
  1.2

### Constructor Summary

Constructors
Constructor and Description
`Properties()`

### Method Summary

All Methods Static Methods Concrete Methods
`static <T> IValueProperty<IObservableValue<T>,T>` `observableValue(Object valueType)` Returns a value property which observes the value of an `IObservableValue`.
`static <K,V,P> IObservableMap<K,? extends P>[]` `observeEach(IObservableMap<K,V> domainMap, IValueProperty<? super V,? extends P>... properties)` Returns an array of observable maps where each maps observes the corresponding value property on all elements in the given domain map's `values` collection, for each property in the given array.
`static <E,P> IObservableMap<E,? extends P>[]` `observeEach(IObservableSet<E> domainSet, IValueProperty<? super E,? extends P>... properties)` Returns an array of observable maps where each map observes the corresponding value property on all elements in the given domain set, for each property in the given array.
`static <E> IListProperty<List<E>,E>` `selfList(Object elementType)` Returns a list property which takes the source object (a `List`) as the property list.
`static <K,V> IMapProperty<Map<K,V>,K,V>` `selfMap(Object keyType, Object valueType)` Returns a map property which takes the source object (a `Map`) as the property map.
`static <E> ISetProperty<Set<E>,E>` `selfSet(Object elementType)` Returns a set property which takes the source object (a `Set`) as the property set.
`static <T> IValueProperty<T,T>` `selfValue(Object valueType)` Returns a value property which takes the source object itself as the property value.

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

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### Properties

    public Properties()

### Method Detail

#### observeEach

    @SafeVarargs
    public static <E,P> IObservableMap<E,? extends P>[] observeEach(IObservableSet<E> domainSet,
                                                                                 IValueProperty<? super E,? extends P>... properties)

Returns an array of observable maps where each map observes the corresponding value property on all elements in the given domain set, for each property in the given array.

Parameters:
  `domainSet` -
  `properties` -
Returns:
  an array of observable maps where each map observes the corresponding value property of the given domain set

#### observeEach

    @SafeVarargs
    public static <K,V,P> IObservableMap<K,? extends P>[] observeEach(IObservableMap<K,V> domainMap,
                                                                                   IValueProperty<? super V,? extends P>... properties)

Returns an array of observable maps where each maps observes the corresponding value property on all elements in the given domain map's `values` collection, for each property in the given array.

Parameters:
  `domainMap` - the map of elements whose properties will be observed
  `properties` - array of value properties to observe on each element in the domain map's `values` collection
Returns:
  a list of observable maps where each maps observes the corresponding value property on all elements in the given domain map's `values` collection, for each property in the given array
Since:
  1.6

#### selfValue

    public static <T> IValueProperty<T,T> selfValue(Object valueType)

Returns a value property which takes the source object itself as the property value. This property may be used to wrap an object in an unmodifiable `IObservableValue`.

Parameters:
  `valueType` - the value type of the property
Returns:
  a value property which takes the source object itself as the property value.

#### selfList

    public static <E> IListProperty<List<E>,E> selfList(Object elementType)

Returns a list property which takes the source object (a `List`) as the property list. This property may be used to wrap an arbitrary List instance in an `IObservableList`.

Parameters:
  `elementType` - the element type of the property
Returns:
  a list property which takes the source object (a `List`) as the property list.

#### selfSet

    public static <E> ISetProperty<Set<E>,E> selfSet(Object elementType)

Returns a set property which takes the source object (a `Set`) as the property set. This property may be used to wrap an arbitrary Set instance in an `IObservableSet`.

Parameters:
  `elementType` - the element type of the property
Returns:
  a set property which takes the source object (a `Set`) as the property set.

#### selfMap

    public static <K,V> IMapProperty<Map<K,V>,K,V> selfMap(Object keyType,
                                                           Object valueType)

Returns a map property which takes the source object (a `Map`) as the property map. This property may be used to wrap an arbitrary Map instance in an `IObservableMap`.

Parameters:
  `keyType` - the key type of the property
  `valueType` - the value type of the property
Returns:
  a map property which takes the source object (a `Map` as the property map.

#### observableValue

    public static <T> IValueProperty<IObservableValue<T>,T> observableValue(Object valueType)

Returns a value property which observes the value of an `IObservableValue`. This property may be used e.g. for observing the respective values of an `IObservableList` < `IObservableValue` >.

Calls to `IValueProperty.observe(Object)` or `IValueProperty.observe(Realm, Object)` just cast the argument to `IObservableValue` and return it (the realm argument is ignored).

Parameters:
  `valueType` - the value type of the property
Returns:
  a value property which observes the value of an `IObservableValue`.