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 classAbstractHttpOverXmpp.Base64Representation of Base64 element.static classAbstractHttpOverXmpp.Builder<B extends AbstractHttpOverXmpp.Builder<B,C>,C extends AbstractHttpOverXmpp>A builder for XMPP connection configurations.static classAbstractHttpOverXmpp.ChunkedBase64Representation of ChunkedBase64 element.static classAbstractHttpOverXmpp.DataRepresentation of Data element.static classAbstractHttpOverXmpp.IbbRepresentation of Ibb element.static classAbstractHttpOverXmpp.TextRepresentation of Text element.static classAbstractHttpOverXmpp.XmlRepresentation 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 java.lang.StringNAMESPACE-
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 protectedAbstractHttpOverXmpp(java.lang.String element, AbstractHttpOverXmpp.Builder<?,?> builder)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description AbstractHttpOverXmpp.DatagetData()Returns Data element.HeadersExtensiongetHeaders()Returns Headers element.protected IQ.IQChildElementXmlStringBuildergetIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)This method must be overwritten by IQ subclasses to create their child content.protected abstract IQ.IQChildElementXmlStringBuildergetIQHoxtChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)Returns start tag.java.lang.StringgetVersion()Returns version attribute.-
Methods inherited from class org.jivesoftware.smack.packet.IQ
createErrorResponse, createErrorResponse, createErrorResponse, createResultIQ, getChildElementName, getChildElementNamespace, getChildElementQName, getChildElementXML, getElementName, getType, 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.IqView
isRequestIQ, isResponseIQ
-
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 java.lang.String NAMESPACE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
AbstractHttpOverXmpp
protected AbstractHttpOverXmpp(java.lang.String element, AbstractHttpOverXmpp.Builder<?,?> builder)
-
-
Method Detail
-
getIQChildElementBuilder
protected IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder xml)
Description copied from class:IQThis 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.IQChildElementXmlStringBuilderafter eventual existingExtensionElements have been added.For example to create an IQ with a extra attribute and an additional child element
the body of the<iq to='foo@example.org' id='123'> <bar xmlns='example:bar' extraAttribute='blaz'> <extraElement>elementText</extraElement> </bar> </iq>getIQChildElementBuilderlooks like
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.// 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 (besidesExtensionElements), consider sub-classingSimpleIQinstead.- Specified by:
getIQChildElementBuilderin 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 java.lang.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
-
-