Class AbstractHttpOverXmpp
- java.lang.Object
-
- org.jivesoftware.smack.packet.Stanza
-
- org.jivesoftware.smack.packet.IQ
-
- org.jivesoftware.smackx.hoxt.packet.AbstractHttpOverXmpp
-
- All Implemented Interfaces:
Element
,FullyQualifiedElement
,IqView
,NamedElement
,StanzaView
,TopLevelStreamElement
,XmlLangElement
- Direct Known Subclasses:
HttpOverXmppReq
,HttpOverXmppResp
public abstract class AbstractHttpOverXmpp extends IQ
Abstract parent for Req and Resp IQ packets.- See Also:
- XEP-0332: HTTP over XMPP transport
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 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.-
Nested classes/interfaces inherited from class org.jivesoftware.smack.packet.IQ
IQ.IQChildElementXmlStringBuilder, IQ.ResponseType, IQ.Type
-
-
Field Summary
Fields Modifier and Type Field Description static String
NAMESPACE
-
Fields inherited from class org.jivesoftware.smack.packet.IQ
IQ_ELEMENT, QUERY_ELEMENT
-
Fields inherited from class org.jivesoftware.smack.packet.Stanza
DEFAULT_LANGUAGE, ITEM, language, TEXT
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractHttpOverXmpp(String element, AbstractHttpOverXmpp.Builder<?,?> builder)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method 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.-
Methods inherited from class org.jivesoftware.smack.packet.IQ
createErrorResponse, createErrorResponse, createErrorResponse, createResultIQ, getChildElementName, getChildElementNamespace, getChildElementQName, getChildElementXML, getElementName, getType, isRequestIQ, isResponseIQ, setType, toString, toXML
-
Methods inherited from class org.jivesoftware.smack.packet.Stanza
addCommonAttributes, addExtension, addExtensions, appendErrorIfExists, getDefaultLanguage, getError, getExtension, getExtension, getExtension, getExtensionElement, getExtensions, getExtensions, getExtensions, getExtensions, getExtensionsMap, getFrom, getLanguage, getNamespace, getStanzaId, getTo, hasExtension, hasExtension, hasStanzaIdSet, logCommonAttributes, overrideExtension, removeExtension, removeExtension, setError, setError, setFrom, setLanguage, setNewStanzaId, setStanzaId, setStanzaId, setTo, throwIfNoStanzaId
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.jivesoftware.smack.packet.FullyQualifiedElement
getQName
-
Methods inherited from interface org.jivesoftware.smack.packet.StanzaView
getError, getExtension, getExtension, getExtensions, getExtensions, getExtensions, getFrom, getStanzaId, getTo, hasExtension, hasExtension, hasExtension
-
-
-
-
Field Detail
-
NAMESPACE
public static final String NAMESPACE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AbstractHttpOverXmpp
protected AbstractHttpOverXmpp(String element, AbstractHttpOverXmpp.Builder<?,?> builder)
-
-
Method Detail
-
getIQChildElementBuilder
protected IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)
Description copied from class:IQ
This method must be overwritten by IQ subclasses to create their child content. It is important you don't use the builder to add the final end tag. This will be done automatically byIQ.IQChildElementXmlStringBuilder
after eventual existingExtensionElement
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>
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')
xml.attribute("myAttribute", "myAttributeValue"); xml.setEmptyElement();
If your IQ does not contain any attributes or child elements (besidesExtensionElement
s), consider sub-classingSimpleIQ
instead.- Specified by:
getIQChildElementBuilder
in classIQ
- Parameters:
xml
- a pre-created builder which already has the child element and the 'xmlns' attribute set.- Returns:
- the build to create the IQ child content.
-
getIQHoxtChildElementBuilder
protected abstract IQ.IQChildElementXmlStringBuilder getIQHoxtChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)
Returns start tag.- Parameters:
xml
- builder.- Returns:
- start tag
-
getVersion
public String getVersion()
Returns version attribute.- Returns:
- version attribute
-
getHeaders
public HeadersExtension getHeaders()
Returns Headers element.- Returns:
- Headers element
-
getData
public AbstractHttpOverXmpp.Data getData()
Returns Data element.- Returns:
- Data element
-
-