T
- The type returned from the cachepublic abstract class AbstractActiveDescriptor<T> extends DescriptorImpl implements ActiveDescriptor<T>
Modifier | Constructor and Description |
---|---|
|
AbstractActiveDescriptor()
For serialization
|
protected |
AbstractActiveDescriptor(Descriptor baseDescriptor)
Creates a NON reified ActiveDescriptor based on a copy of the given
baseDescriptor.
|
protected |
AbstractActiveDescriptor(Set<Type> advertisedContracts,
Class<? extends Annotation> scope,
String name,
Set<Annotation> qualifiers,
DescriptorType descriptorType,
DescriptorVisibility descriptorVisibility,
int ranking,
Boolean proxy,
Boolean proxyForSameScope,
String analyzerName,
Map<String,List<String>> metadata)
This constructor must be called with the information about
this descriptor
|
Modifier and Type | Method and Description |
---|---|
void |
addContractType(Type addMe)
Adds an advertised contract to the set of contracts advertised by this descriptor
|
void |
addQualifierAnnotation(Annotation addMe)
Adds the given string to the list of qualifiers
|
void |
dispose(T instance)
Disposes this instance.
|
boolean |
equals(Object o)
This equals matches only if the following fields of the descriptor match:
implementation
contracts
name
scope
qualifiers
descriptorType
descriptorVisibility
metadata
proxiable
proxyForSameScope
analysisName
|
T |
getCache()
This can be used for scopes that will only every be created once.
|
Set<Type> |
getContractTypes()
The set of types that this ActiveDescriptor must produce.
|
Long |
getFactoryLocatorId()
If this ActiveDescriptor has DescriptorType of PROVIDE_METHOD then
this field will return the ServiceId of its associated Factory
service.
|
Long |
getFactoryServiceId()
If this ActiveDescriptor has DescriptorType of PROVIDE_METHOD then
this field will return the ServiceId of its associated Factory
service.
|
List<Injectee> |
getInjectees()
Returns the full list of Injectees this class has.
|
Set<Annotation> |
getQualifierAnnotations()
The full set of qualifiers that this ActiveDescriptor
provides
|
Class<? extends Annotation> |
getScopeAnnotation()
Returns the scope that this ActiveDescriptor belongs to
|
Annotation |
getScopeAsAnnotation()
Returns the scope as an
Annotation
implementation that this ActiveDescriptor belongs to |
int |
hashCode() |
boolean |
isCacheSet()
Returns true if this cache has been set
|
boolean |
isReified()
This method returns true if this descriptor has been reified
(class loaded).
|
void |
releaseCache()
Removes the cached value and makes it such
that this cache has not been set
|
boolean |
removeContractType(Type removeMe)
Removes an advertised contract from the set of contracts advertised by this descriptor
|
boolean |
removeQualifierAnnotation(Annotation removeMe)
Removes the given qualifier from the list of qualifiers
|
void |
setCache(T cacheMe)
Sets the value into the cache
|
void |
setFactoryId(Long locatorId,
Long serviceId)
Sets the locator and serviceId for the factory.
|
void |
setImplementationType(Type t) |
void |
setName(String name)
Sets the name of this descriptor.
|
void |
setReified(boolean reified)
This method is called to change the state of the
reification of this descriptor
|
void |
setScopeAnnotation(Class<? extends Annotation> scopeAnnotation)
Sets the scope annotation for this descriptor
|
void |
setScopeAsAnnotation(Annotation scopeAnnotation)
Sets the scope as an
Annotation implementation. |
addAdvertisedContract, addMetadata, addMetadata, addQualifier, clearMetadata, descriptorEquals, getAdvertisedContracts, getClassAnalysisName, getDescriptorType, getDescriptorVisibility, getImplementation, getLoader, getLocatorId, getMetadata, getName, getQualifiers, getRanking, getScope, getServiceId, isProxiable, isProxyForSameScope, pretty, readExternal, readObject, removeAdvertisedContract, removeAllMetadata, removeMetadata, removeQualifier, setClassAnalysisName, setDescriptorType, setDescriptorVisibility, setImplementation, setLoader, setLocatorId, setMetadata, setProxiable, setProxyForSameScope, setRanking, setScope, setServiceId, toString, writeExternal, writeObject
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
create, getImplementationClass, getImplementationType
getAdvertisedContracts, getClassAnalysisName, getDescriptorType, getDescriptorVisibility, getImplementation, getLoader, getLocatorId, getMetadata, getName, getQualifiers, getRanking, getScope, getServiceId, isProxiable, isProxyForSameScope, setRanking
public AbstractActiveDescriptor()
protected AbstractActiveDescriptor(Descriptor baseDescriptor)
baseDescriptor
- The non-null base descriptor to copy values fromprotected AbstractActiveDescriptor(Set<Type> advertisedContracts, Class<? extends Annotation> scope, String name, Set<Annotation> qualifiers, DescriptorType descriptorType, DescriptorVisibility descriptorVisibility, int ranking, Boolean proxy, Boolean proxyForSameScope, String analyzerName, Map<String,List<String>> metadata)
advertisedContracts
- The contracts that should be
advertised by this descriptor (may not be null, but may be
empty)scope
- The scope of this descriptor (may not be null)name
- The name of this descriptor (may be null)qualifiers
- The qualifiers of this descriptor (may not
be null, but may be empty)ranking
- The ranking for this descriptorlocatorId
- The id of the locator for this descriptormetadata
- Metadata to add to this descriptorpublic void setImplementationType(Type t)
public void setName(String name)
setName
in class DescriptorImpl
name
- The name for this descriptorpublic T getCache()
SingleCache
getCache
in interface SingleCache<T>
public boolean isCacheSet()
SingleCache
isCacheSet
in interface SingleCache<T>
public void setCache(T cacheMe)
SingleCache
setCache
in interface SingleCache<T>
cacheMe
- A single value that can be cached in this
active descriptorpublic void releaseCache()
SingleCache
releaseCache
in interface SingleCache<T>
public boolean isReified()
ActiveDescriptor
isReified
in interface ActiveDescriptor<T>
public void setReified(boolean reified)
reified
- true if this descriptor should appear reified,
false otherwisepublic Set<Type> getContractTypes()
ActiveDescriptor
getContractTypes
in interface ActiveDescriptor<T>
public void addContractType(Type addMe)
addMe
- The contract to add. May not be nullpublic boolean removeContractType(Type removeMe)
removeMe
- The contract to remove. May not be nullpublic Annotation getScopeAsAnnotation()
ActiveDescriptor
Annotation
implementation that this ActiveDescriptor belongs togetScopeAsAnnotation
in interface ActiveDescriptor<T>
Annotation
public void setScopeAsAnnotation(Annotation scopeAnnotation)
Annotation
implementation.
This method will also modify the scope as a Class
and the underlying scope as a StringscopeAnnotation
- The scope as an Annotation
. May
not be nullpublic Class<? extends Annotation> getScopeAnnotation()
ActiveDescriptor
getScopeAnnotation
in interface ActiveDescriptor<T>
public void setScopeAnnotation(Class<? extends Annotation> scopeAnnotation)
scopeAnnotation
- The non-null scope annotation for this servicepublic Set<Annotation> getQualifierAnnotations()
ActiveDescriptor
getQualifierAnnotations
in interface ActiveDescriptor<T>
public void addQualifierAnnotation(Annotation addMe)
addMe
- The fully qualified class name of the qualifier to add. May not be nullpublic boolean removeQualifierAnnotation(Annotation removeMe)
removeMe
- The fully qualifier class name of the qualifier to remove. May not be nullpublic Long getFactoryServiceId()
ActiveDescriptor
getFactoryServiceId
in interface ActiveDescriptor<T>
public Long getFactoryLocatorId()
ActiveDescriptor
getFactoryLocatorId
in interface ActiveDescriptor<T>
public void setFactoryId(Long locatorId, Long serviceId)
locatorId
- The locatorId of the factory associated with
this methodserviceId
- The serviceId of the factory associated with
this methodpublic List<Injectee> getInjectees()
ActiveDescriptor
If this descriptor is describing a factory created type then this list must have zero length
getInjectees
in interface ActiveDescriptor<T>
public void dispose(T instance)
ActiveDescriptor
dispose
in interface ActiveDescriptor<T>
instance
- The instance to destroypublic int hashCode()
hashCode
in class DescriptorImpl
public boolean equals(Object o)
DescriptorImpl
equals
in class DescriptorImpl
o
- The object to compare to this one. May be null (which will result in a false)Copyright © 2009-2017, Oracle and/or its affiliates. All Rights Reserved.