// Get the event type
Type eventType = parameterTypes[subscribeToPosition];
// Get the event qualifiers and the Unqualified
Set<Annotation> eventQualifiers = new HashSet<Annotation>();
Unqualified eventUnqualified = null;
Annotation subscribeToAnnotations[] = paramAnnotations[subscribeToPosition];
for (Annotation possibleQualifier : subscribeToAnnotations) {
if (ReflectionHelper.isAnnotationAQualifier(possibleQualifier)) {
eventQualifiers.add(possibleQualifier);
}
if (Unqualified.class.equals(possibleQualifier.annotationType())) {
eventUnqualified = (Unqualified) possibleQualifier;
}
}
// Get the injectees for the other parameters
InjecteeImpl injectees[] = new InjecteeImpl[parameterTypes.length];
for (int lcv = 0; lcv < injectees.length; lcv++) {
if (lcv == subscribeToPosition) {
injectees[lcv] = null;
}
else {
InjecteeImpl ii = new InjecteeImpl();
ii.setRequiredType(parameterTypes[lcv]);
Set<Annotation> parameterQualifiers = new HashSet<Annotation>();
Annotation parameterAnnotations[] = paramAnnotations[lcv];
boolean isOptional = false;
boolean isSelf = false;
Unqualified unqualified = null;
for (Annotation possibleQualifier : parameterAnnotations) {
if (ReflectionHelper.isAnnotationAQualifier(possibleQualifier)) {
parameterQualifiers.add(possibleQualifier);
}