public class RosterPacket extends IQ
Modifier and Type | Class and Description |
---|---|
static class |
RosterPacket.Item
A roster item, which consists of a JID, their name, the type of subscription, and
the groups the roster item belongs to.
|
static class |
RosterPacket.ItemStatus
The subscription status of a roster item.
|
static class |
RosterPacket.ItemType |
IQ.IQChildElementXmlStringBuilder, IQ.Type
Modifier and Type | Field and Description |
---|---|
static String |
ELEMENT |
static String |
NAMESPACE |
IQ_ELEMENT, QUERY_ELEMENT
DEFAULT_LANGUAGE, ITEM, language, TEXT
Constructor and Description |
---|
RosterPacket() |
Modifier and Type | Method and Description |
---|---|
void |
addRosterItem(RosterPacket.Item item)
Adds a roster item to the packet.
|
protected IQ.IQChildElementXmlStringBuilder |
getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder buf)
This method must be overwritten by IQ subclasses to create their child content.
|
int |
getRosterItemCount()
Returns the number of roster items in this roster packet.
|
List<RosterPacket.Item> |
getRosterItems()
Returns a copied list of the roster items in the packet.
|
String |
getVersion() |
void |
setVersion(String version) |
createErrorResponse, createResultIQ, getChildElementName, getChildElementNamespace, getChildElementXML, getType, isRequestIQ, setType, toXML
addCommonAttributes, addExtension, addExtensions, appendErrorIfExists, getDefaultLanguage, getError, getExtension, getExtension, getExtensions, getExtensions, getExtensionsXML, getFrom, getLanguage, getPacketID, getStanzaId, getTo, hasExtension, hasExtension, hasStanzaIdSet, overrideExtension, removeExtension, removeExtension, setError, setFrom, setLanguage, setPacketID, setStanzaId, setTo, toString
public static final String ELEMENT
public static final String NAMESPACE
public RosterPacket()
public void addRosterItem(RosterPacket.Item item)
item
- a roster item.public int getRosterItemCount()
public List<RosterPacket.Item> getRosterItems()
protected IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder(IQ.IQChildElementXmlStringBuilder buf)
IQ
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 stanza(/packet) extensions), 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.public String getVersion()
public void setVersion(String version)