Sha256: 1889cdc5c4326a7514d16c6e5393db0ac10b4c558595fe88b8777ae2ff070e90

Contents?: true

Size: 798 Bytes

Versions: 6

Compression:

Stored size: 798 Bytes

Contents

require 'json'

module AllscriptsUnityClient
  class JSONUnityResponse < UnityResponse
    def to_hash
      result = @response

      # All JSON magic responses are an array with one item
      result = result.first

      # All JSON magic results contain one key on their object named
      # actioninfo
      result = result.values.first

      # The data in a JSON magic result is always an array. If that array
      # only has a single item, then just return that as the result. This is
      # a compromise as some actions that should always return arrays
      # (i.e. GetProviders) may return a single hash.
      if result.count == 1
        result = result.first
      end

      result = convert_dates_to_utc(result)
      Utilities::recursively_symbolize_keys(result)
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
allscripts_unity_client-2.0.5 lib/allscripts_unity_client/json_unity_response.rb
allscripts_unity_client-2.0.4 lib/allscripts_unity_client/json_unity_response.rb
allscripts_unity_client-2.0.3 lib/allscripts_unity_client/json_unity_response.rb
allscripts_unity_client-2.0.2 lib/allscripts_unity_client/json_unity_response.rb
allscripts_unity_client-2.0.1 lib/allscripts_unity_client/json_unity_response.rb
allscripts_unity_client-2.0.0 lib/allscripts_unity_client/json_unity_response.rb