Class ContainedConversation

java.lang.Object
org.springframework.webflow.conversation.impl.ContainedConversation
All Implemented Interfaces:
Serializable, Conversation

public class ContainedConversation extends Object implements Conversation, Serializable
Internal Conversation implementation used by the conversation container.

This is an internal helper class of the SessionBindingConversationManager.

Author:
Erwin Vervaet
See Also:
  • Constructor Details

    • ContainedConversation

      public ContainedConversation(ConversationContainer container, ConversationId id, ConversationLock lock)
      Create a new contained conversation.
      Parameters:
      container - the container containing the conversation
      id - the unique id assigned to the conversation
      lock - the conversation lock
  • Method Details

    • setContainer

      protected void setContainer(ConversationContainer container)
    • getId

      public ConversationId getId()
      Description copied from interface: Conversation
      Returns the unique id assigned to this conversation. This id remains the same throughout the life of the conversation. This method can be safely called without owning the lock of this conversation.
      Specified by:
      getId in interface Conversation
      Returns:
      the conversation id
    • setId

      protected void setId(ConversationId id)
    • lock

      public void lock()
      Description copied from interface: Conversation
      Lock this conversation. May block until the lock is available, if someone else has acquired the lock.
      Specified by:
      lock in interface Conversation
    • getAttribute

      public Object getAttribute(Object name)
      Description copied from interface: Conversation
      Returns the conversation attribute with the specified name. You need to acquire the lock on this conversation before calling this method.
      Specified by:
      getAttribute in interface Conversation
      Parameters:
      name - the attribute name
      Returns:
      the attribute value
    • putAttribute

      public void putAttribute(Object name, Object value)
      Description copied from interface: Conversation
      Puts a conversation attribute into this context. You need to acquire the lock on this conversation before calling this method.
      Specified by:
      putAttribute in interface Conversation
      Parameters:
      name - the attribute name
      value - the attribute value
    • removeAttribute

      public void removeAttribute(Object name)
      Description copied from interface: Conversation
      Removes a conversation attribute. You need to acquire the lock on this conversation before calling this method.
      Specified by:
      removeAttribute in interface Conversation
      Parameters:
      name - the attribute name
    • end

      public void end()
      Description copied from interface: Conversation
      Ends this conversation. This method should only be called once to terminate the conversation and cleanup any allocated resources. You need to aquire the lock on this conversation before calling this method.
      Specified by:
      end in interface Conversation
    • unlock

      public void unlock()
      Description copied from interface: Conversation
      Unlock this conversation, making it available to others for manipulation.
      Specified by:
      unlock in interface Conversation
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object