Package org.glassfish.hk2.utilities
Class InjecteeImpl
java.lang.Object
org.glassfish.hk2.utilities.InjecteeImpl
- All Implemented Interfaces:
Injectee
This is a writeable version of the Injectee interface. Using this
implementation may make your code more portable, as new methods
added to the interface will be reflected in this class.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate ActiveDescriptor
<?> private boolean
private boolean
private AnnotatedElement
private Class
<?> private int
private Set
<Annotation> private Type
private Unqualified
-
Constructor Summary
ConstructorsConstructorDescriptionNone of the fields of the returned object will be setInjecteeImpl
(Type requiredType) Only the requiredType field will be setInjecteeImpl
(Injectee copyMe) This is the copy constructor, which will copy all the values from the incoming Injectee -
Method Summary
Modifier and TypeMethodDescriptionClass
<?> Returns the parent class for this injectee.This returns the ActiveDescriptor of the injectee if it is knownIf this Injectee is in a constructor this will return the constructor being injected into.int
If this Injectee is a constructor or method parameter, this will return the index of the parameter.This is the set of required qualifiers for this injectee.This is the required type of the injectee.This method returns theUnqualified
annotation if it is present on the injection point.boolean
This method returns true if this injection point is annotated with VOptional.boolean
isSelf()
This method returns true if this injection point is annotated with VSelf.void
setInjecteeDescriptor
(ActiveDescriptor<?> injecteeDescriptor) Sets the descriptor to be associated with this injecteevoid
setOptional
(boolean optional) Sets whether or not this Injectee should be considered optionalvoid
setParent
(AnnotatedElement parent) This setter sets both the parent and the injecteeClass fields.void
setPosition
(int position) Sets the position of this Injectee.void
setRequiredQualifiers
(Set<Annotation> requiredQualifiers) Sets the required qualifiers for this Injecteevoid
setRequiredType
(Type requiredType) Sets the required type of this Injecteevoid
setSelf
(boolean self) Sets whether or not this is a self-referencing injecteevoid
setUnqualified
(Unqualified unqualified) Sets the unqualified annotation to be associated with this injecteetoString()
-
Field Details
-
requiredType
-
qualifiers
-
position
private int position -
pClass
-
parent
-
isOptional
private boolean isOptional -
isSelf
private boolean isSelf -
unqualified
-
injecteeDescriptor
-
-
Constructor Details
-
InjecteeImpl
public InjecteeImpl()None of the fields of the returned object will be set -
InjecteeImpl
Only the requiredType field will be set- Parameters:
requiredType
- The possibly null required type
-
InjecteeImpl
This is the copy constructor, which will copy all the values from the incoming Injectee- Parameters:
copyMe
- The non-null Injectee to copy the values from
-
-
Method Details
-
getRequiredType
Description copied from interface:Injectee
This is the required type of the injectee. The object that is injected into this point must be type-safe with regards to this type- Specified by:
getRequiredType
in interfaceInjectee
- Returns:
- The type that this injectee is expecting. Any object injected into this injection point must be type-safe with regards to this type
-
setRequiredType
Sets the required type of this Injectee- Parameters:
requiredType
- The required type of this injectee
-
getRequiredQualifiers
Description copied from interface:Injectee
This is the set of required qualifiers for this injectee. All of these qualifiers must be present on the implementation class of the object that is injected into this injectee. Note that the fields of the annotation must also match- Specified by:
getRequiredQualifiers
in interfaceInjectee
- Returns:
- Will not return null, but may return an empty set. The set of all qualifiers that must match.
-
setRequiredQualifiers
Sets the required qualifiers for this Injectee- Parameters:
requiredQualifiers
- The non-null set of required qualifiers
-
getPosition
public int getPosition()Description copied from interface:Injectee
If this Injectee is a constructor or method parameter, this will return the index of the parameter. If this Injectee is a field, this will return -1- Specified by:
getPosition
in interfaceInjectee
- Returns:
- the position of the parameter, or -1 if this is a field
-
setPosition
public void setPosition(int position) Sets the position of this Injectee. The position represents the index of the parameter, or -1 if this Injectee is describing a field.- Parameters:
position
- The index position of the parameter, or -1 if descrbing a field
-
getInjecteeClass
Description copied from interface:Injectee
Returns the parent class for this injectee. This is the class of the object that will be injected into. This field may return null if this is from a service lookup- Specified by:
getInjecteeClass
in interfaceInjectee
- Returns:
- The class of the object that will be injected into
-
getParent
Description copied from interface:Injectee
If this Injectee is in a constructor this will return the constructor being injected into. If this Injectee is in a method this will return the method being injected into. If this injectee represents a field, this will return the field being injected into. This injectee may be neither in which case this will return null -
setParent
This setter sets both the parent and the injecteeClass fields.- Parameters:
parent
- The parent (Field, Constructor or Method) which is the parent of this Injectee
-
isOptional
public boolean isOptional()Description copied from interface:Injectee
This method returns true if this injection point is annotated with VOptional. In this case if there is no definition for the injection point in the system it is allowable for the system to merely return null- Specified by:
isOptional
in interfaceInjectee
- Returns:
- true if the injection point is annotated with VOptional, false otherwise
-
setOptional
public void setOptional(boolean optional) Sets whether or not this Injectee should be considered optional- Parameters:
optional
- true if this injectee is optional, false if required
-
isSelf
public boolean isSelf()Description copied from interface:Injectee
This method returns true if this injection point is annotated with VSelf. In this case the required type must have a raw class ofActiveDescriptor
, isOptional must be false and the set of required qualifiers must be empty -
setSelf
public void setSelf(boolean self) Sets whether or not this is a self-referencing injectee- Parameters:
self
- true if this is a self-referencing Injectee, and false otherwise
-
getUnqualified
Description copied from interface:Injectee
This method returns theUnqualified
annotation if it is present on the injection point. This can be used to determine what qualifiers should NOT be given to the injection point.- Specified by:
getUnqualified
in interfaceInjectee
- Returns:
- The
Unqualified
annotation on the injection point, or null if there is noUnqualified
annotation on the injection point
-
setUnqualified
Sets the unqualified annotation to be associated with this injectee- Parameters:
unqualified
- The unqualified annotation to be associated with this injectee
-
getInjecteeDescriptor
Description copied from interface:Injectee
This returns the ActiveDescriptor of the injectee if it is known- Specified by:
getInjecteeDescriptor
in interfaceInjectee
- Returns:
- The ActiveDescriptor of the injectee, or null if the parent is not known
-
setInjecteeDescriptor
Sets the descriptor to be associated with this injectee- Parameters:
injecteeDescriptor
- The injectee to be associated with this injectee
-
toString
-