Class Jabber::IqQueryDiscoItems
In: lib/xmpp4r/iq/query/discoitems.rb
Parent: IqQuery
X XDelay XMuc XRoster XMucUser REXML::Element XRosterItem IqQuery XMLStanza IqVcard DiscoIdentity XMucUserItem DiscoItem Error RosterItem DiscoFeature IqQueryRoster IqQueryVersion IqQueryDiscoItems IqQueryDiscoInfo Message Presence Iq Singleton IdGenerator Connection Client Component Comparable JID RuntimeError ErrorException AuthenticationFailure RosterItem Stream StreamParser Roster Vcard Version lib/xmpp4r/authenticationfailure.rb lib/xmpp4r/iq/query/roster.rb lib/xmpp4r/idgenerator.rb lib/xmpp4r/iq/query/version.rb lib/xmpp4r/connection.rb lib/xmpp4r/x/mucuseritem.rb lib/xmpp4r/x/roster.rb lib/xmpp4r/iq.rb lib/xmpp4r/jid.rb lib/xmpp4r/iq/query.rb lib/xmpp4r/xmlstanza.rb lib/xmpp4r/x/delay.rb lib/xmpp4r/errorexception.rb lib/xmpp4r/client.rb lib/xmpp4r/stream.rb lib/xmpp4r/x/muc.rb lib/xmpp4r/streamparser.rb lib/xmpp4r/x.rb lib/xmpp4r/iq/vcard.rb lib/xmpp4r/iq/query/discoinfo.rb lib/xmpp4r/error.rb lib/xmpp4r/component.rb lib/xmpp4r/message.rb lib/xmpp4r/iq/query/discoitems.rb lib/xmpp4r/presence.rb lib/xmpp4r/helpers/roster.rb lib/xmpp4r/helpers/vcard.rb lib/xmpp4r/helpers/version.rb Helpers Jabber Module: Jabber

Class for handling Service Discovery queries, items (JEP 0030)

This <query/> may contain multiple DiscoItem elements, describing multiple services to be browsed by Jabber clients. These may then get further information about these items by querying IqQueryDiscoInfo and further sub-items by querying IqQueryDiscoItems.

Methods

new   node   node=   set_node   typed_add  

Public Class methods

Create a new query with namespace jabber.org/protocol/disco#items

[Source]

    # File lib/xmpp4r/iq/query/discoitems.rb, line 22
22:     def initialize
23:       super
24:       add_namespace('http://jabber.org/protocol/disco#items')
25:     end

Public Instance methods

Get the queried Service Discovery node or nil

A Service Discovery node is not a JID node, this may be a bit confusing. It’s just to make Service Discovery browsing a bit more structured.

[Source]

    # File lib/xmpp4r/iq/query/discoitems.rb, line 51
51:     def node
52:       attributes['node']
53:     end

Get the queried Service Discovery node or nil

[Source]

    # File lib/xmpp4r/iq/query/discoitems.rb, line 57
57:     def node=(val)
58:       attributes['node'] = val
59:     end

Get the queried Service Discovery node or nil (chaining-friendly)

[Source]

    # File lib/xmpp4r/iq/query/discoitems.rb, line 64
64:     def set_node(val)
65:       self.node = val
66:       self
67:     end

Add a children element

Converts <item/> elements to [DiscoItem]

[Source]

    # File lib/xmpp4r/iq/query/discoitems.rb, line 31
31:     def typed_add(element)
32:       if element.kind_of?(REXML::Element)
33: 
34:         if element.name == 'item'
35:           super(DiscoItem::new.import(element))
36:         else
37:           super(element)
38:         end
39: 
40:       else
41:         super(element)
42:       end
43:     end

[Validate]