T
- The type parameter corresponding to the type parameter of the
Class
used as key (getKey()
).public class AdapterKey<T> extends Object implements Comparable<AdapterKey<T>>
Class
key and String
role to register adapters at
and retrieve them from IAdaptable
s. Using an AdapterKey
instead of just a Class
or TypeToken
key allows to register
several adapters under the same key, serving different roles. Nevertheless,
adapters can still be accessed in a type-safe manner. To register a default
adapter for a certain Class
or TypeToken
key, the
DEFAULT_ROLE
may be used.
Creating AdapterKey
s is supported by get(Class, String)
and
get(TypeToken, String)
, as well as get(Class)
and
get(TypeToken)
respectively, where the latter two will use the
DEFAULT_ROLE
.
Modifier and Type | Field and Description |
---|---|
static String |
DEFAULT_ROLE
A default role to be used for
AdapterKey s. |
Modifier and Type | Method and Description |
---|---|
int |
compareTo(AdapterKey<T> o) |
static AdapterKey<?> |
defaultRole()
Returns an
AdapterKey with no type key and the 'default' role,
which can only be used in adapter map bindings. |
boolean |
equals(Object obj) |
static <T> AdapterKey<T> |
get(Class<T> key)
Creates a new
AdapterKey for the given raw type key and the
DEFAULT_ROLE role, which can be used to retrieve an adapter from
an IAdaptable. |
static <T> AdapterKey<T> |
get(Class<T> key,
String role)
Creates a new
AdapterKey for the given key and role. |
static <T> AdapterKey<T> |
get(com.google.common.reflect.TypeToken<T> key)
Creates a new
AdapterKey for the given type key and the
DEFAULT_ROLE role, which can be used to retrieve an adapter from
an IAdaptable. |
static <T> AdapterKey<T> |
get(com.google.common.reflect.TypeToken<T> key,
String role)
Creates a new
AdapterKey for the given key and role, which can be
used to retrieve an adapter from an IAdaptable. |
com.google.common.reflect.TypeToken<T> |
getKey()
Returns the key used by this
AdapterKey . |
String |
getRole()
Returns the role used by this
AdapterKey . |
int |
hashCode() |
static AdapterKey<?> |
role(String role)
Returns an
AdapterKey with no type key and the given role, which
can only be used in adapter map bindings. |
String |
toString() |
public static final String DEFAULT_ROLE
AdapterKey
s.get(Class)
,
Constant Field Valuespublic static AdapterKey<?> defaultRole()
AdapterKey
with no type key and the 'default' role,
which can only be used in adapter map bindings. See AdapterMaps
.public static <T> AdapterKey<T> get(Class<T> key)
AdapterKey
for the given raw type key and the
DEFAULT_ROLE
role, which can be used to retrieve an adapter from
an IAdaptable.T
- The adapter type.key
- The key to use for the newly created AdapterKey
. May
not be null
.AdapterKey
for the given key and role.get(Class, String)
public static <T> AdapterKey<T> get(Class<T> key, String role)
AdapterKey
for the given key and role.T
- The adapter type.key
- The key to use for the newly created AdapterKey
. May
not be null
.role
- The role to use for the newly created AdapterKey
. May
not be null
.AdapterKey
for the given key and role.public static <T> AdapterKey<T> get(com.google.common.reflect.TypeToken<T> key)
AdapterKey
for the given type key and the
DEFAULT_ROLE
role, which can be used to retrieve an adapter from
an IAdaptable.T
- The adapter type.key
- The key to use for the newly created AdapterKey
. May
not be null
.AdapterKey
for the given key and role.get(TypeToken, String)
public static <T> AdapterKey<T> get(com.google.common.reflect.TypeToken<T> key, String role)
AdapterKey
for the given key and role, which can be
used to retrieve an adapter from an IAdaptable.T
- The adapter type.key
- The key to use for the newly created AdapterKey
. May
not be null
.role
- The role to use for the newly created AdapterKey
. May
not be null
.AdapterKey
for the given key and role.public static AdapterKey<?> role(String role)
AdapterKey
with no type key and the given role, which
can only be used in adapter map bindings. See AdapterMaps
.role
- The role to use.public int compareTo(AdapterKey<T> o)
compareTo
in interface Comparable<AdapterKey<T>>
public com.google.common.reflect.TypeToken<T> getKey()
AdapterKey
.public String getRole()
AdapterKey
.Copyright (c) 2014 itemis AG and others. All rights reserved.