Class AdapterStore
- All Implemented Interfaces:
IAdaptable
AdapterStore is a basic IAdaptable implementation that can
be used standalone.-
Property Summary
PropertiesTypePropertyDescriptionjavafx.beans.property.ReadOnlyMapProperty<AdapterKey<?>,Object> Returns an unmodifiable read-only map property that contains the registered adapters by their keys. -
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.gef.common.adapt.IAdaptable
IAdaptable.Bound<A extends IAdaptable> -
Field Summary
Fields inherited from interface org.eclipse.gef.common.adapt.IAdaptable
ADAPTERS_PROPERTY -
Constructor Summary
ConstructorsConstructorDescriptionCreates a newAdapterStorewith no initial adapters.AdapterStore(TypeToken<T> adapterType, T adapter) Creates a new AdapterStore with the single given initial adapter, using the 'default' role.AdapterStore(TypeToken<T> adapterType, T adapter, String role) Creates a new AdapterStore with the single given initial adapter.AdapterStore(T adapter) Creates a new AdapterStore with the single given initial adapter, using the 'default' role. -
Method Summary
Modifier and TypeMethodDescriptionjavafx.beans.property.ReadOnlyMapProperty<AdapterKey<?>,Object> Returns an unmodifiable read-only map property that contains the registered adapters by their keys.voidclear()Removes all registered adapters from thisAdapterStore.<T> TgetAdapter(TypeToken<T> key) Returns an adapter for the givenTypeTokenkey if one can unambiguously be retrieved.<T> TgetAdapter(Class<T> key) Returns an adapter for the givenClasskey if one can unambiguously be retrieved.<T> TgetAdapter(AdapterKey<T> key) Returns an adapter for the givenAdapterKeyif one can unambiguously be retrieved, i.e. if there is only a single adapter that 'matches' the givenAdapterKey.<T> AdapterKey<T>getAdapterKey(T adapter) Returns the key under which the given adapter is bound.javafx.collections.ObservableMap<AdapterKey<?>,Object> Gets the value of the property adapters.<T> Map<AdapterKey<? extends T>,T> getAdapters(TypeToken<? super T> key) Returns all adapters 'matching' the givenTypeTokenkey, i.e. all adapters whoseAdapterKey'sTypeTokenkeyAdapterKey.getKey()) refers to the same or a sub-type or of the givenTypeTokenkey.<T> Map<AdapterKey<? extends T>,T> getAdapters(Class<? super T> key) Returns all adapters 'matching' the givenClasskey, i.e. all adapters whoseAdapterKey'sTypeTokenkeyAdapterKey.getKey()) refers to the same or a sub-type of the givenClasskey.<T> voidsetAdapter(TypeToken<T> adapterType, T adapter) Registers the given adapter under the 'default' role (seeAdapterKey.DEFAULT_ROLE.<T> voidsetAdapter(TypeToken<T> adapterType, T adapter, String role) Registers the given adapter under the given role.<T> voidsetAdapter(T adapter) Registers the given adapter under anAdapterKey, which takes the given raw type key as well as the 'default' role (seeAdapterKey.DEFAULT_ROLE.<T> voidsetAdapter(T adapter, String role) Registers the given adapter under the given role .<T> voidunsetAdapter(T adapter) Unregisters the given adapter under all keys it was registered for.
-
Property Details
-
adapters
- Specified by:
adaptersPropertyin interfaceIAdaptable- Returns:
- An unmodifiable read-only map property.
- See Also:
-
-
Constructor Details
-
AdapterStore
public AdapterStore()Creates a newAdapterStorewith no initial adapters. -
AdapterStore
public AdapterStore(T adapter) Creates a new AdapterStore with the single given initial adapter, using the 'default' role.- Type Parameters:
T- The adapter type.- Parameters:
adapter- The adapter to be registered.
-
AdapterStore
Creates a new AdapterStore with the single given initial adapter, using the 'default' role.- Type Parameters:
T- The adapter type.- Parameters:
adapterType- The runtime type of the adapter to be registered.adapter- The adapter to be registered.
-
AdapterStore
Creates a new AdapterStore with the single given initial adapter.- Type Parameters:
T- The adapter type.- Parameters:
adapterType- The runtime type of the adapter to be registered.adapter- The adapter to be registered.role- The role under which the adapter is to be registered.
-
-
Method Details
-
adaptersProperty
Description copied from interface:IAdaptableReturns an unmodifiable read-only map property that contains the registered adapters by their keys.- Specified by:
adaptersPropertyin interfaceIAdaptable- Returns:
- An unmodifiable read-only map property.
- See Also:
-
clear
public void clear()Removes all registered adapters from thisAdapterStore. -
getAdapter
Description copied from interface:IAdaptableReturns an adapter for the givenAdapterKeyif one can unambiguously be retrieved, i.e. if there is only a single adapter that 'matches' the givenAdapterKey.An adapter 'matching' the
AdapterKeyis an adapter, which is registered with anAdapterKey, whoseTypeTokenkey (AdapterKey.getKey()) refers to the same type or a sub-type of the givenAdapterKey'sTypeTokenkey and whose role (AdapterKey.getRole())) equals the role of the givenAdapterKey's role.If there is more than one adapter that 'matches' the given
AdapterKey, or there is no one 'matching' it,nullwill be returned.- Specified by:
getAdapterin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
key- TheAdapterKeyused to retrieve a registered adapter.- Returns:
- The unambiguously retrievable adapter for the given
AdapterKeyornullif none could be retrieved.
-
getAdapter
Description copied from interface:IAdaptableReturns an adapter for the givenClasskey if one can unambiguously be retrieved. That is, if there is only a single adapter that 'matches' the givenClasskey, this adapter is returned, ignoring the role under which it is registered (seeAdapterKey.getRole()).An adapter 'matching' the
Classkey is an adapter, which is registered with anAdapterKey, whose key (AdapterKey.getKey()) refers to the same type or a sub-type of the givenClasskey.If there is more than one adapter that 'matches' the given
Classkey, it will return the single adapter that is registered for the default role (AdapterKey.DEFAULT_ROLE), if there is a single adapter for which this holds. Otherwise it will returnnull.- Specified by:
getAdapterin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
key- TheClasskey used to retrieve a registered adapter.- Returns:
- The unambiguously retrievable adapter for the given
Classkey ornullif none could be retrieved.
-
getAdapter
Description copied from interface:IAdaptableReturns an adapter for the givenTypeTokenkey if one can unambiguously be retrieved. That is, if there is only a single adapter that 'matches' the givenTypeTokenkey, this adapter is returned, ignoring the role under which it is registered (seeAdapterKey.getRole()).An adapter 'matching' the
TypeTokenkey is an adapter, which is registered with anAdapterKey, whose key (AdapterKey.getKey()) refers to the same type or a sub-type of the given type key.If there is more than one adapter that 'matches' the given
TypeTokenkey, it will return the single adapter that is registered for the default role (AdapterKey.DEFAULT_ROLE), if there is a single adapter for which this holds. Otherwise it will returnnull.- Specified by:
getAdapterin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
key- TheTypeTokenkey used to retrieve a registered adapter.- Returns:
- The unambiguously retrievable adapter for the given
TypeTokenkey ornullif none could be retrieved.
-
getAdapterKey
Description copied from interface:IAdaptableReturns the key under which the given adapter is bound.- Specified by:
getAdapterKeyin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
adapter- The adapter whose key to retrieve.- Returns:
- The
AdapterKeyunder which the respective adapter is bound, ornullif the adapter is not registered.
-
getAdapters
Gets the value of the property adapters.- Specified by:
getAdaptersin interfaceIAdaptable- Property description:
- Returns:
- An unmodifiable
ObservableMap.
-
getAdapters
Description copied from interface:IAdaptableReturns all adapters 'matching' the givenClasskey, i.e. all adapters whoseAdapterKey'sTypeTokenkeyAdapterKey.getKey()) refers to the same or a sub-type of the givenClasskey.- Specified by:
getAdaptersin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
key- TheClasskey to retrieve adapters for.- Returns:
- A
Mapcontaining all those adapters registered at thisIAdaptable, whoseAdapterKey'sTypeTokenkey (AdapterKey.getKey()) refers to the same or a sub-type of the givenClasskey, qualified by their respectiveAdapterKeys. - See Also:
-
getAdapters
Description copied from interface:IAdaptableReturns all adapters 'matching' the givenTypeTokenkey, i.e. all adapters whoseAdapterKey'sTypeTokenkeyAdapterKey.getKey()) refers to the same or a sub-type or of the givenTypeTokenkey.- Specified by:
getAdaptersin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
key- TheTypeTokenkey to retrieve adapters for.- Returns:
- A
Mapcontaining all those adapters registered at thisIAdaptable, whoseAdapterKey'sTypeTokenkey (AdapterKey.getKey()) refers to the same or a sub-type of the givenTypeTokenkey, qualified by their respectiveAdapterKeys. - See Also:
-
setAdapter
public <T> void setAdapter(T adapter) Description copied from interface:IAdaptableRegisters the given adapter under anAdapterKey, which takes the given raw type key as well as the 'default' role (seeAdapterKey.DEFAULT_ROLE. The adapter may afterwards be retrieved by any type key 'in between' the given key type and actual raw type. If the actual type of the parameter is not a raw type but a parameterized type, it is not legitimate to use this method.If the given adapter implements
IAdaptable.Bound, the adapter will obtain a back-reference to thisIAdaptablevia itsIAdaptable.Bound.setAdaptable(IAdaptable)method.- Specified by:
setAdapterin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
adapter- The adapter to register under the givenClasskey.- See Also:
-
setAdapter
Description copied from interface:IAdaptableRegisters the given adapter under the given role .- Specified by:
setAdapterin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
adapter- The adapter to register.role- The role to register this adapter with.- See Also:
-
setAdapter
Description copied from interface:IAdaptableRegisters the given adapter under the 'default' role (seeAdapterKey.DEFAULT_ROLE.If the given adapter implements
IAdaptable.Bound, the adapter will obtain a back-reference to thisIAdaptablevia itsIAdaptable.Bound.setAdaptable(IAdaptable)method.- Specified by:
setAdapterin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
adapterType- TheTypeTokenunder which to register the given adapter, which should reflect the actual adapter type.adapter- The adapter to register under the givenTypeTokenkey.- See Also:
-
setAdapter
Description copied from interface:IAdaptableRegisters the given adapter under the given role.If the given adapter implements
IAdaptable.Bound, the adapter will obtain a back-reference to thisIAdaptablevia itsIAdaptable.Bound.setAdaptable(IAdaptable)method.- Specified by:
setAdapterin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
adapterType- ATypeTokenrepresenting the actual type of the given adapter.adapter- The adapter to register.role- The role under which to register the adapter.
-
unsetAdapter
public <T> void unsetAdapter(T adapter) Description copied from interface:IAdaptableUnregisters the given adapter under all keys it was registered for.If the given adapter implements
IAdaptable.Bound, the back-reference to thisIAdaptablewill be removed via itsIAdaptable.Bound.setAdaptable(IAdaptable)method, passing overnull.- Specified by:
unsetAdapterin interfaceIAdaptable- Type Parameters:
T- The adapter type.- Parameters:
adapter- The adapter which should be removed.
-