Simple class to manage compliant results from MCollective::RPC agents
Currently it just fakes Hash behaviour to the result to remain backward compatible but it also knows which agent and action produced it so you can associate results to a DDL
# File lib/mcollective/rpc/result.rb, line 13 def initialize(agent, action, result={}) @agent = agent @action = action @results = result end
# File lib/mcollective/rpc/result.rb, line 19 def [](idx) @results[idx] end
# File lib/mcollective/rpc/result.rb, line 23 def []=(idx, item) @results[idx] = item end
# File lib/mcollective/rpc/result.rb, line 31 def each @results.each_pair {|k,v| yield(k,v) } end
# File lib/mcollective/rpc/result.rb, line 27 def fetch(key, default) @results.fetch(key, default) end
# File lib/mcollective/rpc/result.rb, line 35 def to_json(*a) {:agent => @agent, :action => @action, :sender => @results[:sender], :statuscode => @results[:statuscode], :statusmsg => @results[:statusmsg], :data => @results[:data]}.to_json(*a) end