|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.glassfish.hk2.utilities.DescriptorImpl
com.sun.hk2.component.AbstractInhabitantImpl<T>
@Deprecated public abstract class AbstractInhabitantImpl<T>
Partial implementation of Inhabitant
that defines methods whose
semantics is fixed by ServiceLocator
.
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface com.sun.hk2.component.Holder |
---|
Holder.Impl<T> |
Field Summary | |
---|---|
protected Descriptor |
descriptor
Deprecated. |
protected static Logger |
logger
Deprecated. |
Constructor Summary | |
---|---|
AbstractInhabitantImpl(Descriptor descriptorOfSelf)
Deprecated. |
Method Summary | ||
---|---|---|
Collection<Inhabitant> |
companions()
Deprecated. Returns the companion inhabitants associated with this inhabitant. |
|
void |
dispose(T object)
Deprecated. |
|
T |
get()
Deprecated. Returns the instance of this inhabitant. |
|
static
|
getAnnotation(Class<?> annotated,
Class<V> annotation,
boolean walkParentChain)
Deprecated. FOR INTERNAL USE TO HK2 |
|
|
getAnnotation(Class<V> annotation)
Deprecated. |
|
Collection<Annotation> |
getAnnotations()
Deprecated. The collection of annotations for this type. |
|
|
getByType(Class<U> type)
Deprecated. Obtain a reference to the associated component/service. |
|
Descriptor |
getDescriptor()
Deprecated. The Descriptor fully characterizes the attributes
of this Provider. |
|
protected static Descriptor |
getDescriptorFor(Inhabitant<?> i)
Deprecated. |
|
Provider<T> |
getProvider()
Deprecated. Return a Provider with providing contextual information
on how the provider will be used. |
|
Provider<T> |
getProvider(Context ctx)
Deprecated. Return a Provider optionally providing contextual
information for how the component provider will be used (e.g., for
contextual injection, etc). |
|
|
getSerializedMetadata(Class<T> type)
Deprecated. Obtains the metadata serialized into String. |
|
|
getSerializedMetadata(Class<T> type,
String key)
Deprecated. Obtains the serialized metadata. |
|
Inhabitant |
lead()
Deprecated. If this inhabitant is a companion to another inhabitant (called "lead"), This method returns that inhabitant. |
|
boolean |
matches(Descriptor matchTo)
Deprecated. |
|
void |
setCompanions(Collection<Inhabitant> companions)
Deprecated. This method is only meant to be invoked by ServiceLocator . |
|
String |
toString()
Deprecated. |
Methods inherited from class org.glassfish.hk2.utilities.DescriptorImpl |
---|
addAdvertisedContract, addMetadata, addQualifier, equals, getAdvertisedContracts, getBaseDescriptor, getDescriptorType, getImplementation, getLoader, getLocatorId, getMetadata, getName, getQualifiers, getRanking, getScope, getServiceId, hashCode, pretty, readObject, removeAdvertisedContract, removeAllMetadata, removeMetadata, removeQualifier, setBaseDescriptor, setDescriptorType, setImplementation, setLoader, setLocatorId, setName, setRanking, setScope, setServiceId, writeObject |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.jvnet.hk2.component.Inhabitant |
---|
get, metadata, release, type, typeName |
Methods inherited from interface org.glassfish.hk2.Provider |
---|
isActive |
Methods inherited from interface org.glassfish.hk2.api.Descriptor |
---|
getAdvertisedContracts, getBaseDescriptor, getDescriptorType, getImplementation, getLoader, getLocatorId, getMetadata, getName, getQualifiers, getRanking, getScope, getServiceId, setRanking |
Field Detail |
---|
protected static final Logger logger
protected final Descriptor descriptor
Constructor Detail |
---|
public AbstractInhabitantImpl(Descriptor descriptorOfSelf)
Method Detail |
---|
protected static Descriptor getDescriptorFor(Inhabitant<?> i)
public Provider<T> getProvider(Context ctx)
Binding
Provider
optionally providing contextual
information for how the component provider will be used (e.g., for
contextual injection, etc).
The return value may be unique based on the provided contextual
information. Caller's should therefore not assume identity equality
in the return value.
getProvider
in interface Binding<T>
ctx
- contextual information for how the provider will be used, or null
public Provider<T> getProvider()
Binding
Provider
with providing contextual information
on how the provider will be used. Equivalent to calling
getProvider(null).
getProvider
in interface Binding<T>
public boolean matches(Descriptor matchTo)
public Descriptor getDescriptor()
Binding
Descriptor
fully characterizes the attributes
of this Provider.
getDescriptor
in interface Binding<T>
public String toString()
toString
in class DescriptorImpl
public final T get()
Inhabitant
Some Inhabitant
s return the same instance for multiple
invocations (AKA singleton), but
the method may return different instances to invocations from different
context (AKA scope.) The extreme case is where the each invocation
returns a different object.
get
in interface Factory<T>
get
in interface Provider<T>
get
in interface Inhabitant<T>
public <U> U getByType(Class<U> type)
Provider
getByType
in interface Provider<T>
type
- the required type of the returned object
public <T> T getSerializedMetadata(Class<T> type, String key)
Inhabitant
This method is a wrapper around Inhabitant.metadata()
and useful for
defining a highly structured metadata that doesn't easily fit
a simple string representation.
The implementation of this method is to obtain the value associated with
this key as metadata().getOne(key)
, and if that exists, treat
the value as base64-encoded binary, and deserializes it and returns the object.
The classes used in the serialization need to be available during the build time (normally during the HK2 compile mojo runs) so that the metadata can be serialized. The evolution of these classes need to be careful done, otherwise the deserialization of the metadata may fail unexpectedly.
getSerializedMetadata
in interface Inhabitant<T>
public final <T> T getSerializedMetadata(Class<T> type)
Inhabitant
This is a convenient short-cut that does getSerializedMetadata(type,type.getName())
getSerializedMetadata
in interface Inhabitant<T>
public Inhabitant lead()
Inhabitant
lead
in interface Inhabitant<T>
public final Collection<Inhabitant> companions()
Inhabitant
This method works with the Inhabitant.lead()
method in pairs, such
that the following condition always holds:
x.companions().contains(y) <-> y.lead()==x
companions
in interface Inhabitant<T>
public final void setCompanions(Collection<Inhabitant> companions)
Inhabitant
ServiceLocator
.
setCompanions
in interface Inhabitant<T>
public void dispose(T object)
public <V extends Annotation> V getAnnotation(Class<V> annotation)
public static <V extends Annotation> V getAnnotation(Class<?> annotated, Class<V> annotation, boolean walkParentChain)
public Collection<Annotation> getAnnotations()
Provider
Provider.type()
.
getAnnotations
in interface Provider<T>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |