Class: Jabber::Bytestreams::IqQueryBytestreams
- Inherits:
-
IqQuery
- Object
- REXML::Element
- IqQuery
- Jabber::Bytestreams::IqQueryBytestreams
- Defined in:
- lib/xmpp4r/bytestreams/iq/bytestreams.rb
Overview
Class for accessing <query/> elements with xmlns=‘jabber.org/protocol/bytestreams’ in <iq/> stanzas.
Constant Summary collapse
- NS_BYTESTREAMS =
'http://jabber.org/protocol/bytestreams'
Instance Method Summary collapse
-
#activate ⇒ Object
- Get the text of the <activate/> child result
- JID
-
or [nil].
-
#activate=(s) ⇒ Object
- Set the text of the <activate/> child s
-
[JID].
-
#initialize(sid = nil, mode = nil) ⇒ IqQueryBytestreams
constructor
- Initialize such a <query/> sid
- String
- Session-ID mode
- Symbol
-
:tcp or :udp.
-
#mode ⇒ Object
- Transfer mode result
-
:tcp or :udp.
-
#mode=(m) ⇒ Object
- Set the transfer mode m
-
:tcp or :udp.
-
#sid ⇒ Object
Session-ID.
-
#sid=(s) ⇒ Object
Set Session-ID.
-
#streamhost_used ⇒ Object
- Get the <streamhost-used/> child result
-
[StreamHostUsed].
- #typed_add(xe) ⇒ Object
Methods inherited from IqQuery
Methods inherited from REXML::Element
#delete_elements, #first_element, #first_element_text, #import, import, #replace_element_text
Constructor Details
#initialize(sid = nil, mode = nil) ⇒ IqQueryBytestreams
Initialize such a <query/>
- sid
- String
-
Session-ID
- mode
- Symbol
-
:tcp or :udp
18 19 20 21 22 23 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 18 def initialize(sid=nil, mode=nil) super() add_namespace(IqQueryBytestreams::NS_BYTESTREAMS) self.sid = sid self.mode = mode end |
Instance Method Details
#activate ⇒ Object
Get the text of the <activate/> child
- result
- JID
-
or [nil]
77 78 79 80 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 77 def activate j = first_element_text('activate') j ? JID.new(j) : nil end |
#activate=(s) ⇒ Object
Set the text of the <activate/> child
- s
- JID
85 86 87 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 85 def activate=(s) replace_element_text('activate', s ? s.to_s : nil) end |
#mode ⇒ Object
Transfer mode
- result
-
:tcp or :udp
50 51 52 53 54 55 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 50 def mode case attributes['mode'] when 'udp' then :udp else :tcp end end |
#mode=(m) ⇒ Object
Set the transfer mode
- m
-
:tcp or :udp
60 61 62 63 64 65 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 60 def mode=(m) case m when :udp then attributes['mode'] = 'udp' else attributes['mode'] = 'tcp' end end |
#sid ⇒ Object
Session-ID
37 38 39 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 37 def sid attributes['sid'] end |
#sid=(s) ⇒ Object
Set Session-ID
43 44 45 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 43 def sid=(s) attributes['sid'] = s end |
#streamhost_used ⇒ Object
Get the <streamhost-used/> child
- result
- StreamHostUsed
70 71 72 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 70 def streamhost_used first_element('streamhost-used') end |
#typed_add(xe) ⇒ Object
25 26 27 28 29 30 31 32 33 |
# File 'lib/xmpp4r/bytestreams/iq/bytestreams.rb', line 25 def typed_add(xe) if xe.kind_of?(REXML::Element) and xe.name == 'streamhost' super StreamHost.new.import(xe) elsif xe.kind_of?(REXML::Element) and xe.name == 'streamhost-used' super StreamHostUsed.new.import(xe) else super xe end end |