Raymond Feng <[EMAIL PROTECTED]> writes:

> 
> Hi,
> 
> As we agreed, the conversation id alone is not sufficient to deal with 
> conversations. We need to maintain the state of the conversations (STARTED, 
> ENDED or EXPIRED).
> 
> I propose that we do the following:
> 
> 1) Define a ConversationManager like:
> 
> public interface ConversationManager() {
>     String start(String conversationID);  // If the conversationID is null, 
> the system will generate one. Returns the conversation ID
>     void end(String conversationID);  // Ends the conversation
>     ConversationState getConversationState(String conversationID); // Get 
> the state of the conversation
>     void register(ConversationListener listener); // Register a listener
>     void unregister(ConversationListener listener); // Remove a listener
> }
> 
> public interface ConversationListener() {
>     void conversationStarted(String conversationID);
>     void conversationEnded(String conversationID);
>     void conversationExpired(String conversationID);
> }
> 
> public enum ConversationState {
>     STARTED, ENDED, EXPIRED
> }
> 

Hi,

One comment on the above API, conversation IDs are not always Strings.

The SCA Specification allows a user to specify a conversation ID as an
object.

For more information, see:

https://issues.apache.org/jira/browse/TUSCANY-1522

Mark


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to