Class: SNMP::VarBindList
- Inherits:
-
Array
- Object
- Array
- SNMP::VarBindList
- Defined in:
- lib/snmp/varbind.rb
Class Method Summary collapse
Instance Method Summary collapse
- #asn1_type ⇒ Object
- #encode ⇒ Object
-
#initialize(varbind_list = []) ⇒ VarBindList
constructor
A new instance of VarBindList.
Constructor Details
#initialize(varbind_list = []) ⇒ VarBindList
Returns a new instance of VarBindList.
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/snmp/varbind.rb', line 30 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 |
Class Method Details
.decode(data) ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'lib/snmp/varbind.rb', line 20 def self.decode(data) list = VarBindList.new varbind_data, remainder = decode_sequence(data) while varbind_data != "" varbind, varbind_data = VarBind.decode(varbind_data) list << varbind end return list, remainder end |
Instance Method Details
#asn1_type ⇒ Object
47 48 49 |
# File 'lib/snmp/varbind.rb', line 47 def asn1_type "VarBindList" end |
#encode ⇒ Object
51 52 53 54 55 56 57 |
# File 'lib/snmp/varbind.rb', line 51 def encode varbind_data = "" self.each do |varbind| varbind_data << varbind.encode end encode_sequence(varbind_data) end |