001 package org.tynamo.conversations.services;
002
003 public interface ConversationManager {
004 public enum Parameters {
005 keepalive
006 };
007
008 public boolean exists(String conversationId);
009
010 public String createConversation(String pageName, Integer maxIdleSeconds);
011
012 public String createConversation(String pageName, Integer maxIdleSeconds, boolean useCookie);
013
014 public String createConversation(String pageName, Integer maxIdleSeconds, Integer maxConversationLengthSeconds, boolean useCookie);
015
016 public String createConversation(String id, String pageName, Integer maxIdleSeconds, Integer maxConversationLengthSeconds, boolean useCookie);
017
018 public String getActiveConversation();
019
020 public boolean isActiveConversation(String conversationId);
021
022 public int getSecondsBeforeActiveConversationBecomesIdle();
023
024 /**
025 * Activates conversation context. Internally used by the conversation frameworks.
026 * The interface of this operation will change in T5.1 since it has a common interface
027 * for handling request parameters
028 * */
029 public boolean activateConversation(Object parameterObject);
030
031 public String endConversation(String conversationId);
032
033 public void setPagePersistentFieldStrategy(ConversationalPersistentFieldStrategy pagePersistentFieldStrategy);
034
035 }