parentContainer = getSessionContainer(request);
}
logger.debug("Request components are {}", requestScoped);
MutablePicoContainer requestContainer = new DefaultPicoContainer(new Caching(),
new JavaEE5LifecycleStrategy(new NullComponentMonitor()), parentContainer);
requestContainer.addComponent(HttpSession.class, request.getRequest().getSession());
for (Map.Entry<Class<?>, Class<?>> entry : requestScoped.entrySet()) {
requestContainer.addComponent(entry.getKey(), entry.getValue());
}
for (Map.Entry<Class<?>, Class<?>> entry : prototypeScoped.entrySet()) {
requestContainer.as(Characteristics.NO_CACHE).addComponent(entry.getKey(), entry.getValue());
}
requestContainer.addComponent(request).addComponent(request.getRequest()).addComponent(request.getResponse());
registerComponentFactories(requestContainer, componentFactoryRegistry.getRequestMap());
return new PicoBasedContainer(requestContainer);
}