class SNMP::VarBindList

Public Class Methods

decode(data, mib=nil) click to toggle source
# File lib/snmp/varbind.rb, line 33
def self.decode(data, mib=nil)
  list = VarBindList.new
  varbind_data, remainder = decode_sequence(data)
  while varbind_data != ""
    varbind, varbind_data = VarBind.decode(varbind_data, mib)
    list << varbind
  end
  return list, remainder
end
new(varbind_list=[]) click to toggle source
Calls superclass method
# File lib/snmp/varbind.rb, line 43
def initialize(varbind_list=[])
  super()
  if varbind_list.respond_to? :to_str
    self << ObjectId.new(varbind_list.to_str).to_varbind
  elsif varbind_list.respond_to? :to_varbind
    self << varbind_list.to_varbind
  else
    varbind_list.each do |item|
      if item.respond_to? :to_str
        self << ObjectId.new(item.to_str).to_varbind
      else
        self << item.to_varbind
      end
    end
  end
end

Public Instance Methods

asn1_type() click to toggle source
# File lib/snmp/varbind.rb, line 60
def asn1_type
  "VarBindList"
end
encode() click to toggle source
# File lib/snmp/varbind.rb, line 64
def encode
  varbind_data = ""
  self.each do |varbind|
    varbind_data << varbind.encode
  end
  encode_sequence(varbind_data)
end