Sha256: d09ecabeb7257ba296f97278890d70f9fcd71ee8b522a30ddfe8dbdaa357c17c

Contents?: true

Size: 347 Bytes

Versions: 27

Compression:

Stored size: 347 Bytes

Contents

module Tessa
  module ResponseFactory

    def new_from_response(response)
      raise RequestFailed.new("Tessa responded with #{response.status}", response) unless response.success?
      case json = JSON.parse(response.body)
      when Array
        json.map { |record| new record }
      when Hash
        new json
      end
    end

  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
tessa-1.2.3 lib/tessa/response_factory.rb
tessa-1.2.2 lib/tessa/response_factory.rb
tessa-2.0 lib/tessa/response_factory.rb
tessa-1.2.1 lib/tessa/response_factory.rb
tessa-1.2.0 lib/tessa/response_factory.rb
tessa-1.1.1 lib/tessa/response_factory.rb
tessa-1.1.0 lib/tessa/response_factory.rb
tessa-1.0.2 lib/tessa/response_factory.rb
tessa-1.0.1 lib/tessa/response_factory.rb
tessa-1.0.0 lib/tessa/response_factory.rb
tessa-1.0.0.pre.rc3 lib/tessa/response_factory.rb
tessa-1.0.0.pre.rc2 lib/tessa/response_factory.rb
tessa-1.0.0.pre.rc1 lib/tessa/response_factory.rb
tessa-0.9.2 lib/tessa/response_factory.rb
tessa-0.9.1 lib/tessa/response_factory.rb
tessa-0.9.0 lib/tessa/response_factory.rb
tessa-0.8.0 lib/tessa/response_factory.rb
tessa-0.7.0 lib/tessa/response_factory.rb
tessa-0.6.3 lib/tessa/response_factory.rb
tessa-0.6.2 lib/tessa/response_factory.rb