lib/sfpagent/helper.rb in sfpagent-0.3.0 vs lib/sfpagent/helper.rb in sfpagent-0.3.1

- old
+ new

@@ -1,5 +1,29 @@ +module Sfp + def self.to_ruby(object) + object = Sfp::Helper.deep_clone(object) + object.accept(Sfp::Helper::Sfp2Ruby) + object + end +end + module Sfp::Helper + Sfp2Ruby = Object.new + def Sfp2Ruby.visit(name, value, parent) + if name[0] == '_' + parent.delete(name) + elsif value.is_a?(Hash) + case value['_context'] + when 'null' + parent[name] = nil + when 'any_value', 'constraint', 'procedure' + parent.delete(name) + when 'set' + parent[name] = value['_values'] + end + end + true + end end module Sfp::Helper::Net def post_data(address, port, path, data, open_timeout=5, read_timeout=1800) uri = create_uri(address, port, path)