@Override
public T getInstance(Provider provider, Object ... providedArgs) {
try {
return constructorRef.getConstructor().newInstance(parameterBuilder.buildParameters(provider, providedArgs));
} catch (Exception e) {
throw new InjectionException("Could not create new instance of type [" + type.getName() + "]", e);
}
}