Class DepartQueuePacket

java.lang.Object
org.jivesoftware.smack.packet.Stanza
org.jivesoftware.smack.packet.IQ
org.jivesoftware.smackx.workgroup.packet.DepartQueuePacket
All Implemented Interfaces:
Element, IqView, NamedElement, StanzaView, TopLevelStreamElement, XmlElement, XmlLangElement

public class DepartQueuePacket extends IQ
A IQ stanza used to depart a workgroup queue. There are two cases for issuing a depart queue request:
  • The user wants to leave the queue. In this case, an instance of this class should be created without passing in a user address.
  • An administrator or the server removes wants to remove a user from the queue. In that case, the address of the user to remove from the queue should be used to create an instance of this class.
  • Constructor Details

    • DepartQueuePacket

      public DepartQueuePacket(EntityBareJid workgroup)
      Creates a depart queue request stanza to the specified workgroup.
      Parameters:
      workgroup - the workgroup to depart.
    • DepartQueuePacket

      public DepartQueuePacket(EntityBareJid workgroup, EntityJid user)
      Creates a depart queue request to the specified workgroup and for the specified user.
      Parameters:
      workgroup - the workgroup to depart.
      user - the user to make depart from the queue.
  • Method Details

    • getIQChildElementBuilder

      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 by IQ.IQChildElementXmlStringBuilder after eventual existing ExtensionElements 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 ExtensionElements), consider sub-classing SimpleIQ instead.
      Specified by:
      getIQChildElementBuilder in class IQ
      Parameters:
      buf - a pre-created builder which already has the child element and the 'xmlns' attribute set.
      Returns:
      the build to create the IQ child content.