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.
@ConversationScoped
Modifier and Type | Method and 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.
|
void begin()
Mark the current transient conversation long-running. A conversation identifier is generated by the container.
java.lang.IllegalStateException
- if the current conversation is already marked long-running.void begin(java.lang.String id)
Mark the current transient conversation long-running, with a specified identifier.
id
- conversation idjava.lang.IllegalStateException
- if the current conversation is already marked long-running.java.lang.IllegalArgumentException
- if a conversation with the specified identifier already exists.void end()
Marks the current long-running conversation transient.
java.lang.IllegalStateException
- if the current conversation is already marked transient.java.lang.String getId()
Get the identifier of the current long-running conversation.
long getTimeout()
Get the timeout of the current conversation.
void setTimeout(long milliseconds)
Set the timeout of the current conversation.
milliseconds
- the new timeout in milliseconds.boolean isTransient()
Determine if the conversation is marked transient or long-running.
true
if the conversation is marked transient, or false
if it is marked long-running.