Class: Ganglia::XDRPacket
- Inherits:
-
Object
- Object
- Ganglia::XDRPacket
- Defined in:
- lib/gmetric.rb
Instance Method Summary collapse
- #data ⇒ Object
-
#initialize ⇒ XDRPacket
constructor
A new instance of XDRPacket.
- #pack_string(data) ⇒ Object
- #pack_uint(data) ⇒ Object (also: #pack_int)
Constructor Details
#initialize ⇒ XDRPacket
Returns a new instance of XDRPacket.
90 91 92 |
# File 'lib/gmetric.rb', line 90 def initialize @data = StringIO.new end |
Instance Method Details
#data ⇒ Object
110 111 112 |
# File 'lib/gmetric.rb', line 110 def data @data.string end |
#pack_string(data) ⇒ Object
100 101 102 103 104 105 106 107 108 |
# File 'lib/gmetric.rb', line 100 def pack_string(data) len = data.size pack_uint(len) # pad the string len = ((len+3) / 4) * 4 data = data + ("\0" * (len - data.size)) @data << data end |
#pack_uint(data) ⇒ Object Also known as: pack_int
94 95 96 97 |
# File 'lib/gmetric.rb', line 94 def pack_uint(data) # big endian unsigned long @data << [data].pack("N") end |