if (previousCreationalContext == null) {
creationalContext = new CreationalContextImpl<T>(bean);
} else {
creationalContext = previousCreationalContext.getCreationalContext(bean);
}
final CurrentInjectionPoint currentInjectionPoint = container.services().get(CurrentInjectionPoint.class);
currentCreationalContext.set(creationalContext);
try {
// Ensure that there is no injection point associated
currentInjectionPoint.push(EmptyInjectionPoint.INSTANCE);
return context.get(bean, creationalContext);