class VW::ResponseListener

Attributes

callback[RW]
network_response[RW]
request_method[RW]
request_params[RW]
request_url[RW]
serializer[RW]

Public Class Methods

new(serializer, &block) click to toggle source
# File lib/project/volley_wrap/response_listener.rb, line 5
def initialize(serializer, &block)
  @serializer = serializer
  @callback = block
end

Public Instance Methods

onErrorResponse(error) click to toggle source
# File lib/project/volley_wrap/response_listener.rb, line 15
def onErrorResponse(error)
  if network_response = error.networkResponse
    data = network_response.data
  end
  create_result(network_response, data, error.toString)
end
onResponse(response) click to toggle source
# File lib/project/volley_wrap/response_listener.rb, line 10
def onResponse(response)
  response_object = expect_json? ? Moran.parse(response.to_s) : response
  create_result(@network_response, response_object, nil)
end

Private Instance Methods

create_result(response, response_object, error) click to toggle source
# File lib/project/volley_wrap/response_listener.rb, line 28
def create_result(response, response_object, error)
  request = HTTPResult.new(response, response_object, error)
  request.request_url = @request_url
  request.request_params = @request_params
  request.request_method = @request_method

  if VW::SessionClient.debug
    mp request.to_s
  end
  callback.call request
end
dump_network_error(error) click to toggle source
# File lib/project/volley_wrap/response_listener.rb, line 40
def dump_network_error(error)
  puts error.toString
  if response = error.networkResponse
    puts response.statusCode
    puts response.headers
    puts response.data
  end
end
expect_json?() click to toggle source
# File lib/project/volley_wrap/response_listener.rb, line 24
def expect_json?
  serializer == :json
end