Class: SNMP4EM::SnmpGetRequest
- Inherits:
-
SnmpRequest
- Object
- SnmpRequest
- SNMP4EM::SnmpGetRequest
- Defined in:
- lib/snmp4em/requests/snmp_get_request.rb
Overview
The result of calling SNMP4EM::SNMPCommonRequests#get.
Instance Attribute Summary collapse
-
#snmp_id ⇒ Object
Returns the value of attribute snmp_id.
Attributes inherited from SnmpRequest
Instance Method Summary collapse
-
#callback(&block) ⇒ Object
Used to register a callback that is triggered when the query result is ready.
-
#errback(&block) ⇒ Object
Used to register a callback that is triggered when query fails to complete successfully.
- #handle_response(response) ⇒ Object
Methods inherited from SnmpRequest
#format_outgoing_value, #format_value, #init_callbacks, #initialize, #pending_oids
Constructor Details
This class inherits a constructor from SNMP4EM::SnmpRequest
Instance Attribute Details
#snmp_id ⇒ Object
Returns the value of attribute snmp_id.
6 7 8 |
# File 'lib/snmp4em/requests/snmp_get_request.rb', line 6 def snmp_id @snmp_id end |
Instance Method Details
#callback(&block) ⇒ Object
Used to register a callback that is triggered when the query result is ready. The resulting object is passed as a parameter to the block.
9 10 11 |
# File 'lib/snmp4em/requests/snmp_get_request.rb', line 9 def callback &block super end |
#errback(&block) ⇒ Object
Used to register a callback that is triggered when query fails to complete successfully.
14 15 16 |
# File 'lib/snmp4em/requests/snmp_get_request.rb', line 14 def errback &block super end |
#handle_response(response) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/snmp4em/requests/snmp_get_request.rb', line 18 def handle_response(response) # @private super if response.error_status == :noError pending_oids.zip(response.varbind_list).each do |oid, response_vb| oid[:response] = format_value(response_vb) oid[:state] = :complete end else error_oid = pending_oids[response.error_index - 1] error_oid[:state] = :error error_oid[:error] = SNMP::ResponseError.new(response.error_status) end if pending_oids.empty? result = {} @oids.each do |oid| requested_oid = oid[:requested_string] result[requested_oid] = oid[:error] || oid[:response] end succeed result return end send_msg end |