class Ratsit::Request::SearchPersonsRequest

Public Class Methods

new(args) click to toggle source
Calls superclass method Ratsit::Request::TokenRequest::new
# File lib/ratsit/request/request_search_persons.rb, line 24
def initialize(args)
  super('SearchPersons', parseFilterArgs(args, Ratsit::Filter::SearchPersonsFilter))
end

Public Instance Methods

response() click to toggle source
# File lib/ratsit/request/request_search_persons.rb, line 28
def response
  if response_ok
    rsp = @response.body[:search_persons_response][:search_persons_result][:ratsit_response_package][:person_search_result]
    if rsp.nil?
      raise RatsitError, 'Invalid response from service'
    end
    if rsp[:hits].nil?
      return {
          :retrieved => 0,
          :persons => []
      }
    end
    rsp = rsp[:hits][:hit]
    if rsp.is_a?(Hash)
      rsp = [rsp]
    end
    return {
        :retrieved => rsp.length,
        :persons => rsp
    }
  end
  raise RatsitError, 'Response not ready'
end