Class: AbstractApiWrapper::Response

Inherits:
Object
  • Object
show all
Includes:
ResponseStatus
Defined in:
lib/abstract_api_wrapper.rb

Defined Under Namespace

Classes: Collection, Resource

Instance Method Summary collapse

Methods included from ResponseStatus

#status, #success?

Constructor Details

#initialize(request) ⇒ Response

Returns a new instance of Response.



126
127
128
129
130
131
132
133
134
# File 'lib/abstract_api_wrapper.rb', line 126

def initialize(request)
  @request = request

  @parsed_body = if (request.body.nil? || request.body.empty?)
    []
  else
    JSON.parse(request.body)
  end
end

Instance Method Details

#bodyObject



136
137
138
139
140
141
142
143
144
145
146
# File 'lib/abstract_api_wrapper.rb', line 136

def body
  if @parsed_body.is_a?(Hash)
    Response::Resource.new(@parsed_body, @request)
  elsif @parsed_body.is_a?(Array)
    collection = @parsed_body.map do |item|
      Response::Resource.new(item)
    end

    Response::Collection.new(collection, @request)
  end
end