/**
* Obtain the conversation container from the session. Create a new empty container and add it to the session if no
* existing container can be found.
*/
private ConversationContainer getConversationContainer() {
SharedAttributeMap sessionMap = ExternalContextHolder.getExternalContext().getSessionMap();
synchronized (sessionMap.getMutex()) {
ConversationContainer container = (ConversationContainer) sessionMap.get(sessionKey);
if (container == null) {
container = createConversationContainer();
sessionMap.put(sessionKey, container);
}
return container;
}
}