Class: Motion::HTTP::Adapter::OkhttpCallback
- Inherits:
-
Object
- Object
- Motion::HTTP::Adapter::OkhttpCallback
- Defined in:
- lib/android/adapter.rb
Instance Method Summary collapse
-
#initialize(callback) ⇒ OkhttpCallback
constructor
A new instance of OkhttpCallback.
- #onFailure(call, e) ⇒ Object
- #onResponse(call, response) ⇒ Object
- #parse_response(response) ⇒ Object
Constructor Details
#initialize(callback) ⇒ OkhttpCallback
Returns a new instance of OkhttpCallback.
30 31 32 |
# File 'lib/android/adapter.rb', line 30 def initialize(callback) @callback = callback end |
Instance Method Details
#onFailure(call, e) ⇒ Object
34 35 36 37 |
# File 'lib/android/adapter.rb', line 34 def onFailure(call, e) puts "Error: #{e.getMessage}" @callback.call(Response.new(nil, Headers.new, e.getMessage)) end |
#onResponse(call, response) ⇒ Object
39 40 41 |
# File 'lib/android/adapter.rb', line 39 def onResponse(call, response) @callback.call(parse_response(response)) end |
#parse_response(response) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/android/adapter.rb', line 43 def parse_response(response) headers = Headers.new i = 0 while i < response.headers.size key = response.headers.name(i) value = response.headers.value(i) headers.add(key, value) i += 1 end body_string = response.body.string json = JSON.load(body_string) if headers['content-type'] =~ /application\/json/ Response.new(response.code, headers, body_string, json) end |