public class CrossOverDescriptor<T> extends AbstractActiveDescriptor<T>
| Modifier and Type | Field and Description |
|---|---|
private ActiveDescriptor<T> |
remote |
private ServiceLocator |
remoteLocator |
private boolean |
remoteReified |
| Constructor and Description |
|---|
CrossOverDescriptor(ServiceLocator local,
ActiveDescriptor<T> localService) |
| Modifier and Type | Method and Description |
|---|---|
private void |
checkState() |
T |
create(ServiceHandle<?> root)
Creates an instance of the ActiveDescriptor.
|
void |
dispose(T instance)
Disposes this instance.
|
java.util.Set<java.lang.reflect.Type> |
getContractTypes()
The set of types that this ActiveDescriptor must produce.
|
java.lang.Long |
getFactoryLocatorId()
If this ActiveDescriptor has DescriptorType of PROVIDE_METHOD then
this field will return the ServiceId of its associated Factory
service.
|
java.lang.Long |
getFactoryServiceId()
If this ActiveDescriptor has DescriptorType of PROVIDE_METHOD then
this field will return the ServiceId of its associated Factory
service.
|
java.lang.Class<?> |
getImplementationClass()
The implementation class that should be used
to generate new instances of this descriptor.
|
java.lang.reflect.Type |
getImplementationType()
If known the Type of the implementation.
|
java.util.List<Injectee> |
getInjectees()
Returns the full list of Injectees this class has.
|
java.util.Set<java.lang.annotation.Annotation> |
getQualifierAnnotations()
The full set of qualifiers that this ActiveDescriptor
provides
|
java.lang.Class<? extends java.lang.annotation.Annotation> |
getScopeAnnotation()
Returns the scope that this ActiveDescriptor belongs to
|
java.lang.annotation.Annotation |
getScopeAsAnnotation()
Returns the scope as an
Annotation
implementation that this ActiveDescriptor belongs to |
boolean |
isReified()
This method returns true if this descriptor has been reified
(class loaded).
|
void |
setImplementationType(java.lang.reflect.Type t) |
addContractType, addQualifierAnnotation, equals, getCache, hashCode, isCacheSet, releaseCache, removeContractType, removeQualifierAnnotation, setCache, setFactoryId, setName, setReified, setScopeAnnotation, setScopeAsAnnotationaddAdvertisedContract, 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, writeObjectclone, finalize, getClass, notify, notifyAll, wait, wait, waitgetAdvertisedContracts, getClassAnalysisName, getDescriptorType, getDescriptorVisibility, getImplementation, getLoader, getLocatorId, getMetadata, getName, getQualifiers, getRanking, getScope, getServiceId, isProxiable, isProxyForSameScope, setRankingprivate final ServiceLocator remoteLocator
private final ActiveDescriptor<T> remote
private boolean remoteReified
public CrossOverDescriptor(ServiceLocator local, ActiveDescriptor<T> localService)
public boolean isReified()
isReified in interface ActiveDescriptor<T>isReified in class AbstractActiveDescriptor<T>private void checkState()
public java.lang.Class<?> getImplementationClass()
ActiveDescriptorIf the class returned is a Factory, then the factory is used to create instances. In this case the system will get an instance of the factory and use it to create the instances
public java.lang.reflect.Type getImplementationType()
ActiveDescriptorActiveDescriptor.getImplementationClass()public void setImplementationType(java.lang.reflect.Type t)
setImplementationType in class AbstractActiveDescriptor<T>public java.util.Set<java.lang.reflect.Type> getContractTypes()
ActiveDescriptorgetContractTypes in interface ActiveDescriptor<T>getContractTypes in class AbstractActiveDescriptor<T>public java.lang.annotation.Annotation getScopeAsAnnotation()
ActiveDescriptorAnnotation
implementation that this ActiveDescriptor belongs togetScopeAsAnnotation in interface ActiveDescriptor<T>getScopeAsAnnotation in class AbstractActiveDescriptor<T>Annotationpublic java.lang.Class<? extends java.lang.annotation.Annotation> getScopeAnnotation()
ActiveDescriptorgetScopeAnnotation in interface ActiveDescriptor<T>getScopeAnnotation in class AbstractActiveDescriptor<T>public java.util.Set<java.lang.annotation.Annotation> getQualifierAnnotations()
ActiveDescriptorgetQualifierAnnotations in interface ActiveDescriptor<T>getQualifierAnnotations in class AbstractActiveDescriptor<T>public java.util.List<Injectee> getInjectees()
ActiveDescriptorIf this descriptor is describing a factory created type then this list must have zero length
getInjectees in interface ActiveDescriptor<T>getInjectees in class AbstractActiveDescriptor<T>public java.lang.Long getFactoryServiceId()
ActiveDescriptorgetFactoryServiceId in interface ActiveDescriptor<T>getFactoryServiceId in class AbstractActiveDescriptor<T>public java.lang.Long getFactoryLocatorId()
ActiveDescriptorgetFactoryLocatorId in interface ActiveDescriptor<T>getFactoryLocatorId in class AbstractActiveDescriptor<T>public T create(ServiceHandle<?> root)
ActiveDescriptorroot - The root service handle, which can be used
to associated all the PerLookup objects with this creationpublic void dispose(T instance)
ActiveDescriptordispose in interface ActiveDescriptor<T>dispose in class AbstractActiveDescriptor<T>instance - The instance to destroy