Class: SNMP::Counter64

Inherits:
Integer show all
Defined in:
lib/snmp/varbind.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Integer

#<=>, #coerce, #to_f, #to_i, #to_oid, #to_s

Methods included from BER::Decode

#assert_no_remainder, #build_integer, #decode_integer, #decode_integer_value, #decode_ip_address, #decode_object_id, #decode_object_id_value, #decode_octet_string, #decode_sequence, #decode_timeticks, #decode_tlv, #decode_uinteger_value

Methods included from BER::Encode

#encode_exception, #encode_integer, #encode_length, #encode_null, #encode_object_id, #encode_octet_string, #encode_sequence, #encode_tagged_integer, #encode_tlv, #integer_to_octets

Constructor Details

#initialize(value) ⇒ Counter64

Returns a new instance of Counter64.

Raises:

  • (ArgumentError)


452
453
454
455
456
# File 'lib/snmp/varbind.rb', line 452

def initialize(value)
  super(value)
  raise ArgumentError, "Negative integer invalid: #{@value}" if @value < 0
  raise ArgumentError, "Out of range: #{@value}" if @value > 18446744073709551615
end

Class Method Details

.decode(value_data) ⇒ Object



444
445
446
# File 'lib/snmp/varbind.rb', line 444

def self.decode(value_data)
  Counter64.new(decode_integer_value(value_data))
end

Instance Method Details

#asn1_typeObject



448
449
450
# File 'lib/snmp/varbind.rb', line 448

def asn1_type
  "Counter64"
end

#encodeObject



458
459
460
# File 'lib/snmp/varbind.rb', line 458

def encode
  encode_tagged_integer(BER::Counter64_TAG, @value)
end