ABLE 2.0.0 07/02/2003 10:25:01

com.ibm.conversation
Interface ConversationMetaData

All Known Implementing Classes:
JasConversationMetaData, BasicConversationMetaData

public interface ConversationMetaData

The ConversationMetaData interface represents information about both participants in a conversation.

The participant information includes names, transport descriptors, conversation IDs, etc. It does not contain information about conversation policies, roles, or states; that is contained in the ConversationContext.

In many cases, there is some meta-data that is platform-specific, and hence defined only by implementers or extensions of this interface. The only things that are fully generic are the conversation ID and the string representation of the participants' messaging endpoint addresses (i.e., their inboxes).

This interface is currently only applicable to conversations involving two participants. Also note that two conversation IDs are defined: one for each participant. Each message sent in a conversation is labelled with the recipient's conversation ID, which was specified by that agent during the initial conversation setup. (It would also have been possible to use a single, shared, globally unique conversation ID, specified by the initiator of the conversation. The use of two conversation IDs relaxes the requirement on global uniqueness, and permits agents to specify conversation IDs that are meaningful in other ways--e.g., as primary keys for Conversation beans, etc.)


Field Summary
static int CLOSED
          Connection status value: indicates that the conversation setup handshake has not occurred.
static int HALF_OPEN
          Connection status value: indicates that the firsh phase of the conversation setup handshake is done.
static int OPEN
          Connection status value: indicates that the conversation setup handshake is done.
 
Method Summary
 int getConnectionStatus()
          Returns the current connection status: one of CLOSED, HALF_OPEN, OPEN.
 java.lang.String getPartnerConversationId()
          Returns the conversation ID assigned to this conversation by the other participant (i.e., the agent that does not own this ConversationMetaData object).
 java.lang.String getPartnerEndpointUri()
          Returns the URI for the other agent's message-delivery endpoint.
 java.lang.String getSelfConversationId()
          Returns the conversation ID assigned to this conversation by the agent that owns this ConvesationMetaData object.
 java.lang.String getSelfEndpointUri()
          Returns the URI for the this agent's message-delivery endpoint.
 void setConnectionStatus(int newStatus)
          Sets the current connection status: must be one of CLOSED, HALF_OPEN, OPEN.
 void setPartnerConversationId(java.lang.String newId)
          Sets the conversation ID assigned to this conversation by the other participant (i.e, the agent that does not own this ConvesationMetaData object).
 void setPartnerEndpointUri(java.lang.String newUri)
          Sets the URI for the other agent's message-delivery endpoint.
 void setSelfConversationId(java.lang.String newId)
          Sets the conversation ID assigned to this conversation by the agent that owns this ConvesationMetaData object.
 void setSelfEndpointUri(java.lang.String newUri)
          Sets the URI for the this agent's message-delivery endpoint.
 

Field Detail

CLOSED

public static final int CLOSED
Connection status value: indicates that the conversation setup handshake has not occurred.

HALF_OPEN

public static final int HALF_OPEN
Connection status value: indicates that the firsh phase of the conversation setup handshake is done.

OPEN

public static final int OPEN
Connection status value: indicates that the conversation setup handshake is done.
Method Detail

getConnectionStatus

public int getConnectionStatus()
Returns the current connection status: one of CLOSED, HALF_OPEN, OPEN.
Returns:
The connection status.

setConnectionStatus

public void setConnectionStatus(int newStatus)
Sets the current connection status: must be one of CLOSED, HALF_OPEN, OPEN.
Parameters:
The - new connection status.

getSelfConversationId

public java.lang.String getSelfConversationId()
Returns the conversation ID assigned to this conversation by the agent that owns this ConvesationMetaData object.

If no ID has been assigned (i.e., if the conversation is just being set up), this may be null.

Returns:
The conversation ID of the agent owning this meta-data object.

setSelfConversationId

public void setSelfConversationId(java.lang.String newId)
Sets the conversation ID assigned to this conversation by the agent that owns this ConvesationMetaData object.

This method is called by the ConversationManager during conversation setup. Users should never call it.

Parameters:
newId - The conversation ID of the agent owning this meta-data object.

getPartnerConversationId

public java.lang.String getPartnerConversationId()
Returns the conversation ID assigned to this conversation by the other participant (i.e., the agent that does not own this ConversationMetaData object).

If no ID has been assigned (i.e., if the conversation is just being set up), this may be null.

Returns:
The conversation ID assigned to this conversation by the other participant.

setPartnerConversationId

public void setPartnerConversationId(java.lang.String newId)
Sets the conversation ID assigned to this conversation by the other participant (i.e, the agent that does not own this ConvesationMetaData object).

This method is called during conversation setup, by the decision-logic that is executing the setup conversation policy. Otherwise, users should never call it.

Parameters:
newId - The conversation ID of the other agent.

getSelfEndpointUri

public java.lang.String getSelfEndpointUri()
Returns the URI for the this agent's message-delivery endpoint.

The URI may be unique to this conversation, or may be shared among multiple conversations.

Returns:
The URI for this agent's message-delivery endpoint.

setSelfEndpointUri

public void setSelfEndpointUri(java.lang.String newUri)
Sets the URI for the this agent's message-delivery endpoint.

This method is called during conversation setup. Afterward, users should never call it.

The URI may be unique to this conversation, or may be shared among multiple conversations.

Parameters:
newUri - The URI for this agent's message-delivery endpoint.

getPartnerEndpointUri

public java.lang.String getPartnerEndpointUri()
Returns the URI for the other agent's message-delivery endpoint.

The URI may be unique to this conversation, or may be shared among multiple conversations.

Returns:
The URI for the other agent's message-delivery endpoint.

setPartnerEndpointUri

public void setPartnerEndpointUri(java.lang.String newUri)
Sets the URI for the other agent's message-delivery endpoint.

This method is called during conversation setup, by the decision-logic that is executing the setup conversation policy. Otherwise, users should never call it.

The URI may be unique to this conversation, or may be shared among multiple conversations.

Parameters:
newUri - The URI for the other agent's message-delivery endpoint.

ABLE 2.0.0 07/02/2003 10:25:01

(C) Copyright IBM Corporation 1999, 2003