*/
public <T> T invoke(Object receiver, CreationalContext<T> creationalContext, ParameterValueRedefiner redefinition) {
List<Object> parameterValues = new ArrayList<Object>();
for (int i = 0; i < getParameters().size(); i++) {
if (redefinition != null) {
ParameterValue value = new ParameterValue(i, getParameters().get(i), getBeanManager());
parameterValues.add(redefinition.redefineParameterValue(value));
} else {
parameterValues.add(getBeanManager().getInjectableReference(getParameters().get(i), creationalContext));
}
}