Class DiscoverInfo

  • All Implemented Interfaces:
    org.jivesoftware.smack.packet.Element, org.jivesoftware.smack.packet.FullyQualifiedElement, org.jivesoftware.smack.packet.IqView, org.jivesoftware.smack.packet.NamedElement, org.jivesoftware.smack.packet.StanzaView, org.jivesoftware.smack.packet.TopLevelStreamElement, org.jivesoftware.smack.packet.XmlLangElement, DiscoverInfoView

    public class DiscoverInfo
    extends org.jivesoftware.smack.packet.IQ
    implements DiscoverInfoView
    A DiscoverInfo IQ packet, which is used by XMPP clients to request and receive information to/from other XMPP entities.

    The received information may contain one or more identities of the requested XMPP entity, and a list of supported features by the requested XMPP entity.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  DiscoverInfo.Feature
      Represents the features offered by the item.
      static class  DiscoverInfo.Identity
      Represents the identity of a given XMPP entity.
      • Nested classes/interfaces inherited from class org.jivesoftware.smack.packet.IQ

        org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder, org.jivesoftware.smack.packet.IQ.ResponseType, org.jivesoftware.smack.packet.IQ.Type
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String ELEMENT  
      static java.lang.String NAMESPACE  
      • 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 Detail

      • DiscoverInfo

        @Deprecated
        public DiscoverInfo()
        Deprecated.
        use DiscoverInfoBuilder instead.
        Deprecated.
      • DiscoverInfo

        public DiscoverInfo​(DiscoverInfo d)
        Copy constructor.
        Parameters:
        d - TODO javadoc me please
    • Method Detail

      • addFeature

        @Deprecated
        public boolean addFeature​(java.lang.String feature)
        Deprecated.
        Adds a new feature to the discovered information.
        Parameters:
        feature - the discovered feature
        Returns:
        true if the feature did not already exist.
      • addFeatures

        @Deprecated
        public void addFeatures​(java.util.Collection<java.lang.String> featuresToAdd)
        Adds a collection of features to the packet. Does noting if featuresToAdd is null.
        Parameters:
        featuresToAdd - TODO javadoc me please
      • hasIdentity

        public boolean hasIdentity​(java.lang.String category,
                                   java.lang.String type)
        Returns true if this DiscoverInfo contains at least one Identity of the given category and type.
        Parameters:
        category - the category to look for.
        type - the type to look for.
        Returns:
        true if this DiscoverInfo contains a Identity of the given category and type.
      • getIdentities

        public java.util.List<DiscoverInfo.Identity> getIdentities​(java.lang.String category,
                                                                   java.lang.String type)
        Returns all Identities of the given category and type of this DiscoverInfo.
        Parameters:
        category - category the category to look for.
        type - type the type to look for.
        Returns:
        a list of Identites with the given category and type.
      • getNode

        public java.lang.String getNode()
        Description copied from interface: DiscoverInfoView
        Returns the node attribute that supplements the 'jid' attribute. A node is merely something that is associated with a JID and for which the JID can provide information.

        Node attributes SHOULD be used only when trying to provide or query information which is not directly addressable.

        Specified by:
        getNode in interface DiscoverInfoView
        Returns:
        the node attribute that supplements the 'jid' attribute
      • setNode

        @Deprecated
        public void setNode​(java.lang.String node)
        Deprecated.
        Sets the node attribute that supplements the 'jid' attribute. A node is merely something that is associated with a JID and for which the JID can provide information.

        Node attributes SHOULD be used only when trying to provide or query information which is not directly addressable.

        Parameters:
        node - the node attribute that supplements the 'jid' attribute
      • containsFeature

        public boolean containsFeature​(java.lang.CharSequence feature)
        Returns true if the specified feature is part of the discovered information.
        Parameters:
        feature - the feature to check
        Returns:
        true if the requests feature has been discovered
      • getIQChildElementBuilder

        protected org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder getIQChildElementBuilder​(org.jivesoftware.smack.packet.IQ.IQChildElementXmlStringBuilder xml)
        Specified by:
        getIQChildElementBuilder in class org.jivesoftware.smack.packet.IQ
      • containsDuplicateIdentities

        public boolean containsDuplicateIdentities()
        Test if a DiscoverInfo response contains duplicate identities.
        Returns:
        true if duplicate identities where found, otherwise false
      • containsDuplicateFeatures

        public boolean containsDuplicateFeatures()
        Test if a DiscoverInfo response contains duplicate features.
        Returns:
        true if duplicate identities where found, otherwise false
      • clone

        @Deprecated
        public DiscoverInfo clone()
        Deprecated.
        use asBuilder(String) instead.
        Deprecated, do not use.
        Overrides:
        clone in class java.lang.Object
      • builder

        public static DiscoverInfoBuilder builder​(org.jivesoftware.smack.XMPPConnection connection)
      • builder

        public static DiscoverInfoBuilder builder​(org.jivesoftware.smack.packet.IqData iqData)