-
public interface Conversation
Allows the application to manage the conversation context by marking the current conversation as transient or long-running, specifying a conversation identifier, or setting the conversation timeout.
An instance may be injected:
@Inject Conversation conversation;
The conversation timeout is a hint to the container that a conversation should not be destroyed if it has been active within the last given interval in milliseconds.
CDI Lite implementations are not required to provide support for conversations.
- Author:
- Pete Muir, Gavin King
- See Also:
ConversationScoped
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
begin()
Mark the current transient conversation long-running.void
begin(java.lang.String id)
Mark the current transient conversation long-running, with a specified identifier.void
end()
Marks the current long-running conversation transient.java.lang.String
getId()
Get the identifier of the current long-running conversation.long
getTimeout()
Get the timeout of the current conversation.boolean
isTransient()
Determine if the conversation is marked transient or long-running.void
setTimeout(long milliseconds)
Set the timeout of the current conversation.
-
-
-
Method Detail
-
begin
void begin()
Mark the current transient conversation long-running. A conversation identifier is generated by the container.
- Throws:
java.lang.IllegalStateException
- if the current conversation is already marked long-running.
-
begin
void begin(java.lang.String id)
Mark the current transient conversation long-running, with a specified identifier.
- Parameters:
id
- conversation id- Throws:
java.lang.IllegalStateException
- if the current conversation is already marked long-running.java.lang.IllegalArgumentException
- if a conversation with the specified identifier already exists.
-
end
void end()
Marks the current long-running conversation transient.
- Throws:
java.lang.IllegalStateException
- if the current conversation is already marked transient.
-
getId
java.lang.String getId()
Get the identifier of the current long-running conversation.
- Returns:
- the identifier of the current long-running conversation, or a null value if the current conversation is transient.
-
getTimeout
long getTimeout()
Get the timeout of the current conversation.
- Returns:
- the current timeout in milliseconds.
-
setTimeout
void setTimeout(long milliseconds)
Set the timeout of the current conversation.
- Parameters:
milliseconds
- the new timeout in milliseconds.
-
isTransient
boolean isTransient()
Determine if the conversation is marked transient or long-running.
- Returns:
true
if the conversation is marked transient, orfalse
if it is marked long-running.
-
-