class Moceansdk::Modules::ResponseFactory
Public Class Methods
create_object(raw_response)
click to toggle source
# File lib/moceansdk/modules/response_factory.rb, line 5 def self.create_object(raw_response) begin res = JSON.load(raw_response, proc {|obj| case obj when Hash obj.each {|k, v| obj[k] = if v.is_a? Float # hardcoded float to 4 decimal string sprintf('%.4f', v) elsif v.is_a? Integer v.to_s else v end } when Array obj.map! {|v| v} end }) rescue JSON::JSONError begin res = XmlSimple.xml_in(raw_response, 'ForceArray': false) rescue StandardError raise Moceansdk::Exceptions::MoceanError, 'unable to parse response, ' + raw_response end end hashed_res = HashExtended.new.merge(res) hashed_res.to_dot end