Class IQ

  extended by org.jivesoftware.smack.packet.Packet
      extended by org.jivesoftware.smack.packet.IQ
Direct Known Subclasses:
AgentChatHistory, AgentInfo, AgentStatusRequest, AgentWorkgroups, Authentication, Bind, Bytestream, ChatMetadata, ChatNotes, ChatSettings, DepartQueuePacket, DiscoverInfo, DiscoverItems, GenericSettings, IBBExtensions.Close, IBBExtensions.Open, LastActivity, Macros, MonitorPacket, MUCAdmin, MUCOwner, OccupantsInfo, OfferConfirmation, OfferRequestProvider.OfferRequestPacket, OfferRevokeProvider.OfferRevokePacket, OfflineMessageRequest, OfflineSettings, Privacy, Registration, RosterPacket, SearchSettings, Session, SharedGroupsInfo, SoundSettings, StreamInitiation, Time, Transcript, Transcripts, TranscriptSearch, UserSearch, VCard, Version, WorkgroupForm, WorkgroupProperties

public abstract class IQ
extends Packet

The base IQ (Info/Query) packet. IQ packets are used to get and set information on the server, including authentication, roster operations, and creating accounts. Each IQ packet has a specific type that indicates what type of action is being taken: "get", "set", "result", or "error".

IQ packets can contain a single child element that exists in a specific XML namespace. The combination of the element name and namespace determines what type of IQ packet it is. Some example IQ subpacket snippets:

Matt Tucker

Nested Class Summary
static class IQ.Type
          A class to represent the type of the IQ packet.
Field Summary
Fields inherited from class org.jivesoftware.smack.packet.Packet
Constructor Summary
Method Summary
abstract  String getChildElementXML()
          Returns the sub-element XML section of the IQ packet, or null if there isn't one.
 IQ.Type getType()
          Returns the type of the IQ packet.
 void setType(IQ.Type type)
          Sets the type of the IQ packet.
 String toXML()
          Returns the packet as XML.
Methods inherited from class org.jivesoftware.smack.packet.Packet
addExtension, deleteProperty, getError, getExtension, getExtension, getExtensions, getExtensionsXML, getFrom, getPacketID, getProperty, getPropertyNames, getTo, removeExtension, setError, setFrom, setPacketID, setProperty, setTo
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructor Detail


public IQ()
Method Detail


public IQ.Type getType()
Returns the type of the IQ packet.

the type of the IQ packet.


public void setType(IQ.Type type)
Sets the type of the IQ packet.

type - the type of the IQ packet.


public String toXML()
Description copied from class: Packet
Returns the packet as XML. Every concrete extension of Packet must implement this method. In addition to writing out packet-specific data, every sub-class should also write out the error and the extensions data if they are defined.

Specified by:
toXML in class Packet
the XML format of the packet as a String.


public abstract String getChildElementXML()
Returns the sub-element XML section of the IQ packet, or null if there isn't one. Packet extensions must be included, if any are defined.

Extensions of this class must override this method.

the child element section of the IQ XML.


Copyright © 2003-2007 Jive Software.