8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
# File 'lib/cocoa/adapter.rb', line 8
def self.request(http_method, url, , params = nil, &callback)
progress = nil
on_success = lambda do |task, response_object|
response = task.response
callback.call(Response.new(response.statusCode, Headers.new(response.), nil, response_object))
end
on_error = lambda do |operation, error|
NSLog("Error: %@", error)
response = operation.response
status_code = response.statusCode if response
= response. if response
error_message = error.localizedDescription
error_message += error.userInfo[NSLocalizedDescriptionKey] if error.userInfo[NSLocalizedDescriptionKey]
callback.call(
Response.new(status_code, Headers.new(), error_message)
)
end
case http_method
when :get
manager.GET url, parameters: params, progress: progress, success: on_success, failure: on_error
when :post
manager.POST url, parameters: params, progress: progress, success: on_success, failure: on_error
when :put
manager.PUT url, parameters: params, progress: progress, success: on_success, failure: on_error
when :patch
manager.PATCH url, parameters: params, progress: progress, success: on_success, failure: on_error
when :delete
manager.DELETE url, parameters: params, progress: progress, success: on_success, failure: on_error
end
end
|