class SqlcachedClient::ServerResponses::QueryResponse

Attributes

body[R]

Public Class Methods

new(body) click to toggle source

@param body [Hash]

# File lib/sqlcached_client/server_responses/query_response.rb, line 10
def initialize(body)
  @body = body
end

Public Instance Methods

attachments() click to toggle source
# File lib/sqlcached_client/server_responses/query_response.rb, line 18
def attachments
  body.is_a?(Hash) ? body['attachments'] : nil
end
each(&block) click to toggle source
# File lib/sqlcached_client/server_responses/query_response.rb, line 14
def each(&block)
  block ? entities.each(&block) : entities.each
end
entities() click to toggle source
# File lib/sqlcached_client/server_responses/query_response.rb, line 22
def entities
  @entities ||= get_entities(body)
end
flatten!(level = nil) click to toggle source
# File lib/sqlcached_client/server_responses/query_response.rb, line 30
def flatten!(level = nil)
  entities if @entities.nil?
  @entities.flatten!(level)
end
is_array?() click to toggle source
# File lib/sqlcached_client/server_responses/query_response.rb, line 26
def is_array?
  entities.is_a?(Array)
end

Private Instance Methods

get_entities(data) click to toggle source
# File lib/sqlcached_client/server_responses/query_response.rb, line 37
def get_entities(data)
  if data.is_a?(Array)
    data.map { |item| get_entities(item) }
  elsif data.is_a?(Hash)
    if (resultset = data['resultset']).is_a?(String)
      JSON.parse(resultset)
    else
      resultset
    end
  else
    data
  end
end