Interface Conversation


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:
  • Method Summary Link icon

    Modifier and Type
    Method
    Description
    void
    Mark the current transient conversation long-running.
    void
    Mark the current transient conversation long-running, with a specified identifier.
    void
    end()
    Marks the current long-running conversation transient.
    Get the identifier of the current long-running conversation.
    long
    Get the timeout of the current conversation.
    boolean
    Determine if the conversation is marked transient or long-running.
    void
    setTimeout(long milliseconds)
    Set the timeout of the current conversation.
  • Method Details Link icon

    • begin Link icon

      void begin()

      Mark the current transient conversation long-running. A conversation identifier is generated by the container.

      Throws:
      IllegalStateException - if the current conversation is already marked long-running.
    • begin Link icon

      void begin(String id)

      Mark the current transient conversation long-running, with a specified identifier.

      Parameters:
      id - conversation id
      Throws:
      IllegalStateException - if the current conversation is already marked long-running.
      IllegalArgumentException - if a conversation with the specified identifier already exists.
    • end Link icon

      void end()

      Marks the current long-running conversation transient.

      Throws:
      IllegalStateException - if the current conversation is already marked transient.
    • getId Link icon

      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 Link icon

      long getTimeout()

      Get the timeout of the current conversation.

      Returns:
      the current timeout in milliseconds.
    • setTimeout Link icon

      void setTimeout(long milliseconds)

      Set the timeout of the current conversation.

      Parameters:
      milliseconds - the new timeout in milliseconds.
    • isTransient Link icon

      boolean isTransient()

      Determine if the conversation is marked transient or long-running.

      Returns:
      true if the conversation is marked transient, or falseif it is marked long-running.