Class Jabber::FeatureNegotiation::IqFeature
In: lib/xmpp4r/feature_negotiation/iq/feature.rb
Parent: REXML::Element

Feature negotiation, can appear as direct child to Iq or as child of IqSi

Methods

import   new   typed_add   x  

Public Class methods

[Source]

    # File lib/xmpp4r/feature_negotiation/iq/feature.rb, line 21
21:       def IqFeature.import(element)
22:         IqFeature::new.import(element)
23:       end

[Source]

    # File lib/xmpp4r/feature_negotiation/iq/feature.rb, line 15
15:       def initialize
16:         super('feature')
17: 
18:         add_namespace 'http://jabber.org/protocol/feature-neg'
19:       end

Public Instance methods

[Source]

    # File lib/xmpp4r/feature_negotiation/iq/feature.rb, line 25
25:       def typed_add(element)
26:         if element.name == 'x' and element.namespace == 'jabber:x:data'
27:           super Dataforms::XData.new.import(element)
28:         else
29:           super element
30:         end
31:       end

First <x/> child with xmlns=‘jabber:x:data‘

[Source]

    # File lib/xmpp4r/feature_negotiation/iq/feature.rb, line 35
35:       def x
36:         res = nil
37:         each_element('x') { |e|
38:           res = e if e.namespace == 'jabber:x:data'
39:         }
40:         res
41:       end

[Validate]