Class: VolleyRequest
- Defined in:
- lib/android/volley_request.rb
Constant Summary collapse
- METHOD_CODES =
{ get: 0, post: 1, put: 2, delete: 3, head: 4, options: 5, trace: 6, patch: 7, }
Instance Attribute Summary collapse
-
#callback ⇒ Object
Returns the value of attribute callback.
-
#original_request ⇒ Object
Returns the value of attribute original_request.
Class Method Summary collapse
Instance Method Summary collapse
- #build_response(networkResponse) ⇒ Object
- #deliverError(error) ⇒ Object
- #deliverResponse(response) ⇒ Object
- #parseNetworkResponse(networkResponse) ⇒ Object
Instance Attribute Details
#callback ⇒ Object
Returns the value of attribute callback.
2 3 4 |
# File 'lib/android/volley_request.rb', line 2 def callback @callback end |
#original_request ⇒ Object
Returns the value of attribute original_request.
2 3 4 |
# File 'lib/android/volley_request.rb', line 2 def original_request @original_request end |
Class Method Details
.create(request, callback) ⇒ Object
15 16 17 18 19 20 21 22 |
# File 'lib/android/volley_request.rb', line 15 def self.create(request, callback) volley_request = new(METHOD_CODES[request.http_method], request.url, nil) volley_request.original_request = request volley_request.headers = request.headers.to_hash volley_request.body = request.body volley_request.callback = callback volley_request end |
Instance Method Details
#build_response(networkResponse) ⇒ Object
48 49 50 51 |
# File 'lib/android/volley_request.rb', line 48 def build_response(networkResponse) body = parse_body_from_response(networkResponse) Motion::HTTP::Response.new(original_request, networkResponse.statusCode, Motion::HTTP::Headers.new(networkResponse.headers), body) end |
#deliverError(error) ⇒ Object
34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/android/volley_request.rb', line 34 def deliverError(error) if error.networkResponse response = build_response(error.networkResponse) deliverResponse(response) else Motion::HTTP.logger.error("Error while requesting #{original_request.url}: #{error.getMessage}") error.getStackTrace.each do |line| puts line.toString end response = Motion::HTTP::Response.new(original_request, nil, nil, error.getMessage) callback.call(response) if callback end end |
#deliverResponse(response) ⇒ Object
29 30 31 32 |
# File 'lib/android/volley_request.rb', line 29 def deliverResponse(response) Motion::HTTP.logger.log_response(response) callback.call(response) if callback end |
#parseNetworkResponse(networkResponse) ⇒ Object
24 25 26 27 |
# File 'lib/android/volley_request.rb', line 24 def parseNetworkResponse(networkResponse) response = build_response(networkResponse) Com::Android::Volley::Response.success(response, Com::Android::Volley::Toolbox::HttpHeaderParser.parseCacheHeaders(networkResponse)) end |