public class Transcript extends IQ
IQ.IQChildElementXmlStringBuilder, IQ.Type
IQ_ELEMENT, QUERY_ELEMENT
DEFAULT_LANGUAGE, ITEM, language, TEXT
Constructor and Description |
---|
Transcript(String sessionID)
Creates a transcript request for the given sessionID.
|
Transcript(String sessionID,
List<Stanza> packets)
Creates a new transcript for the given sessionID and list of packets.
|
Modifier and Type | Method and Description |
---|---|
protected IQ.IQChildElementXmlStringBuilder |
getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder buf)
This method must be overwritten by IQ subclasses to create their child content.
|
List<Stanza> |
getPackets()
Returns the list of Messages and Presences that were sent to the room.
|
String |
getSessionID()
Returns id of the session that generated this conversation transcript.
|
createErrorResponse, createErrorResponse, createErrorResponse, createResultIQ, getChildElementName, getChildElementNamespace, getChildElementXML, getChildElementXML, getType, initializeAsResultFor, initialzeAsResultFor, isRequestIQ, setType, toString, toXML
addCommonAttributes, addExtension, addExtensions, appendErrorIfExists, getDefaultLanguage, getError, getExtension, getExtension, getExtensions, getExtensions, getFrom, getLanguage, getPacketID, getStanzaId, getTo, hasExtension, hasExtension, hasStanzaIdSet, logCommonAttributes, overrideExtension, removeExtension, removeExtension, setError, setError, setFrom, setFrom, setLanguage, setPacketID, setStanzaId, setStanzaId, setTo, setTo
public Transcript(String sessionID)
sessionID
- the id of the session to get the conversation transcript.public Transcript(String sessionID, List<Stanza> packets)
sessionID
- the id of the session that generated this conversation transcript.packets
- the list of messages and presences send to the room.public String getSessionID()
public List<Stanza> getPackets()
protected IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder buf)
IQ
IQ.IQChildElementXmlStringBuilder
after eventual existing ExtensionElement
s have been added.
For example to create an IQ with a extra attribute and an additional child element
<iq to='foo@example.org' id='123'>
<bar xmlns='example:bar' extraAttribute='blaz'>
<extraElement>elementText</extraElement>
</bar>
</iq>
the body of the getIQChildElementBuilder
looks like
// The builder 'xml' will already have the child element and the 'xmlns' attribute added
// So the current builder state is "<bar xmlns='example:bar'"
xml.attribute("extraAttribute", "blaz");
xml.rightAngleBracket();
xml.element("extraElement", "elementText");
// Do not close the 'bar' attribute by calling xml.closeElement('bar')
If your IQ only contains attributes and no child elements, i.e. it can be represented as empty element, then you
can mark it as such.
xml.attribute("myAttribute", "myAttributeValue"); xml.setEmptyElement();If your IQ does not contain any attributes or child elements (besides
ExtensionElement
s), consider sub-classing
SimpleIQ
instead.getIQChildElementBuilder
in class IQ
buf
- a pre-created builder which already has the child element and the 'xmlns' attribute set.