eu.semaine.datatypes.stateinfo
Class DialogStateInfo

java.lang.Object
  extended by eu.semaine.datatypes.stateinfo.StateInfo
      extended by eu.semaine.datatypes.stateinfo.DialogStateInfo

public class DialogStateInfo
extends StateInfo

Author:
marc

Nested Class Summary
static class DialogStateInfo.DialogAct
           
 
Field Summary
static java.lang.String APIVersion
           
 
Fields inherited from class eu.semaine.datatypes.stateinfo.StateInfo
apiVersion, doc, info, log, stateName
 
Constructor Summary
DialogStateInfo(org.w3c.dom.Document doc)
           
DialogStateInfo(java.util.Map<java.lang.String,java.lang.String> infoItems, java.util.Collection<DialogStateInfo.DialogAct> dialogActs)
           
 
Method Summary
protected  boolean analyseElement(org.w3c.dom.Element el)
          Make sense of elements in the markup that come directly below the document element.
protected  void createDocumentFromInfo()
           
 java.util.SortedSet<DialogStateInfo.DialogAct> getDialogHistory()
          Get read-only access to the dialog history.
protected  void setupInfoKeys()
          Set up the possible values that we can know about.
 
Methods inherited from class eu.semaine.datatypes.stateinfo.StateInfo
analyseDocument, getAPIVersion, getDocument, getInfo, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

APIVersion

public static final java.lang.String APIVersion
See Also:
Constant Field Values
Constructor Detail

DialogStateInfo

public DialogStateInfo(org.w3c.dom.Document doc)
                throws MessageFormatException
Parameters:
doc -
Throws:
MessageFormatException
javax.jms.JMSException

DialogStateInfo

public DialogStateInfo(java.util.Map<java.lang.String,java.lang.String> infoItems,
                       java.util.Collection<DialogStateInfo.DialogAct> dialogActs)
                throws javax.jms.JMSException
Parameters:
infoItems -
dialogActs - a collection of dialog acts for the dialog history, or null.
Throws:
javax.jms.JMSException
Method Detail

createDocumentFromInfo

protected void createDocumentFromInfo()
Specified by:
createDocumentFromInfo in class StateInfo
See Also:
StateInfo.createDocumentFromInfo()

setupInfoKeys

protected void setupInfoKeys()
Set up the possible values that we can know about. Things that are not previewed here will not be read from the document. When this changes, the APIVersion must change with it.

Specified by:
setupInfoKeys in class StateInfo

analyseElement

protected boolean analyseElement(org.w3c.dom.Element el)
                          throws MessageFormatException
Description copied from class: StateInfo
Make sense of elements in the markup that come directly below the document element. This base version can interpret markup for which the 'set' attribute is a key in the info map. Subclasses will need to override this method to get additional analysis functionality. They can call super.analyseElement(el) to access this implementation.

Overrides:
analyseElement in class StateInfo
Parameters:
el - an element whose parent is the document element.
Returns:
true if the element could be analysed, false otherwise.
Throws:
MessageFormatException

getDialogHistory

public java.util.SortedSet<DialogStateInfo.DialogAct> getDialogHistory()
Get read-only access to the dialog history. The iterator of the sorted set will return the dialog acts sorted by time, most recent first.

Returns:
a set of dialog acts, or null if the message doesn't contain a dialog history.