XMLInjectableConstructor<T> injectableConstructor = new XMLInjectableConstructor<T>(componentConstructor, component,null);
int i = 0;
Constructor<?> constructor = injectableConstructor.getConstructor();
for (Element element : constructorParameterListElement)
{
XMLInjectionPointModel model = XMLUtil.getInjectionPointModel(element, createConfigurationFailedMessage());
injectableConstructor.addInjectionPointModel(model);
Annotation[] paramAnnos = constructor.getParameterAnnotations()[i++];
for(Annotation paramAnno : paramAnnos)
{
model.addAnnotation(paramAnno);
}
model.setInjectionMember(constructor);
model.setType(XMLInjectionModelType.CONSTRUCTOR);
component.addInjectionPoint(InjectionPointFactory.getXMLInjectionPointData(component, model));
}
component.setInjectableConstructor(injectableConstructor);