Class OfflineMessageRequest

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

public class OfflineMessageRequest extends IQ
Represents a request to get some or all the offline messages of a user. This class can also be used for deleting some or all the offline messages of a user.
  • Field Details

  • Constructor Details

  • Method Details

    • getItems

      Returns a List of item children that holds information about offline messages to view or delete.
      Returns:
      a List of item children that holds information about offline messages to view or delete.
    • addItem

      public void addItem(OfflineMessageRequest.Item item)
      Adds an item child that holds information about offline messages to view or delete.
      Parameters:
      item - the item child that holds information about offline messages to view or delete.
    • isPurge

      public boolean isPurge()
      Returns true if all the offline messages of the user should be deleted.
      Returns:
      true if all the offline messages of the user should be deleted.
    • setPurge

      public void setPurge(boolean purge)
      Sets if all the offline messages of the user should be deleted.
      Parameters:
      purge - true if all the offline messages of the user should be deleted.
    • isFetch

      public boolean isFetch()
      Returns true if all the offline messages of the user should be retrieved.
      Returns:
      true if all the offline messages of the user should be retrieved.
    • setFetch

      public void setFetch(boolean fetch)
      Sets if all the offline messages of the user should be retrieved.
      Parameters:
      fetch - true if all the offline messages of the user should be retrieved.
    • 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.