public abstract class AbstractHttpOverXmpp extends IQ
Modifier and Type | Class and Description |
---|---|
static class |
AbstractHttpOverXmpp.Base64
Representation of Base64 element.
|
static class |
AbstractHttpOverXmpp.Builder<B extends AbstractHttpOverXmpp.Builder<B,C>,C extends AbstractHttpOverXmpp>
A builder for XMPP connection configurations.
|
static class |
AbstractHttpOverXmpp.ChunkedBase64
Representation of ChunkedBase64 element.
|
static class |
AbstractHttpOverXmpp.Data
Representation of Data element.
|
static class |
AbstractHttpOverXmpp.Ibb
Representation of Ibb element.
|
static class |
AbstractHttpOverXmpp.Text
Representation of Text element.
|
static class |
AbstractHttpOverXmpp.Xml
Representation of Xml element.
|
IQ.IQChildElementXmlStringBuilder, IQ.Type
Modifier and Type | Field and Description |
---|---|
static String |
NAMESPACE |
IQ_ELEMENT, QUERY_ELEMENT
DEFAULT_LANGUAGE, ITEM, language, TEXT
Modifier | Constructor and Description |
---|---|
protected |
AbstractHttpOverXmpp(String element,
AbstractHttpOverXmpp.Builder<?,?> builder) |
Modifier and Type | Method and Description |
---|---|
AbstractHttpOverXmpp.Data |
getData()
Returns Data element.
|
HeadersExtension |
getHeaders()
Returns Headers element.
|
protected IQ.IQChildElementXmlStringBuilder |
getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)
This method must be overwritten by IQ subclasses to create their child content.
|
protected abstract IQ.IQChildElementXmlStringBuilder |
getIQHoxtChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)
Returns start tag.
|
String |
getVersion()
Returns version attribute.
|
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 static final String NAMESPACE
protected AbstractHttpOverXmpp(String element, AbstractHttpOverXmpp.Builder<?,?> builder)
protected IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)
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
xml
- a pre-created builder which already has the child element and the 'xmlns' attribute set.protected abstract IQ.IQChildElementXmlStringBuilder getIQHoxtChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)
xml
- builder.public String getVersion()
public HeadersExtension getHeaders()
public AbstractHttpOverXmpp.Data getData()