turbot-api 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- M2RmZWNmYTlkNTJlNzc1YTk3NzUzMGZlNDVmMzVlMzM0M2I3NWUyNw==
4
+ NjU2MDg2NjAxMmU0NjYxYTk2ODY2Y2UxYWJiZDBhZWUxMThkY2ZhNw==
5
5
  data.tar.gz: !binary |-
6
- YzQyOTg0ZDQzZjY1OTNiMDBkYjI2ZWNiMDUyMDhlNGNmMzkyZmRkZg==
6
+ MThmYjQ4MmFhYTVjYjFmMDk2NmFjNzE0YjA1NzJjODA4YzQxOTNkNQ==
7
7
  SHA512:
8
8
  metadata.gz: !binary |-
9
- OWVjYjE2Y2ViYmVkNmUwYWJhMzQ1YzE1MWJjMjYwMzM0MzMxMTBhMmIxMmE0
10
- ODhmMjIyNjNkYmQxZTg1MGFiYzQ2ZWU4N2IzNWQyOTNjOWRiYmNjOWMwMmRj
11
- ODBlM2NjMTQ4ZTE1M2ZlNmQ1ZjdiYzY3ZTk0YmRjZTE4N2ExZGI=
9
+ NTA4NDAzNDNlZWE0ZTY1YjJmMGZmZTljZTAzNDExMmU1YTVkNzczYmJiMjMz
10
+ NTlhNmUzOGVlZDBjMjUxZGRiZmUxY2I2ZGViNDE2ZDNlZDNjZDIwYTlmZjY5
11
+ YmVmYzAxY2RkZTA4MTZmZTllNjc3NTY5YmMxZTQwYWZkNzgyNDQ=
12
12
  data.tar.gz: !binary |-
13
- NmM1NWVhNDJjNTllNTVhZWQ4NDIxZjg2NDFjNzVjMWIxNGI4M2E1YzEzODVm
14
- ZWY2NDVjNjhhYjNjNTcxN2UzNDU2NDNjZjVhODI5Y2JlM2JlYTE1MDJlZGRl
15
- NGM0OTU2YTU4YTJjZmQzNTMyZTVhYjA3NzNlMzYzODhiMDNhM2E=
13
+ MmI2NjA4OGYzY2M5YjMyMTFjZmZhYjVkYjBlMzc4MzNhMjEyOGMyMWU4M2Qz
14
+ Y2ZhYWM0OGRjYzBiMDdkOTIxYWNhMDJlZDIwZTdmNDBkYmQ0NGQyYjAxMjM3
15
+ MWMxZDhlODRmNDE4ZTI0NzY3ZTcwNzhhMjk5MjljNzkwMzYwY2I=
@@ -103,18 +103,35 @@ module Turbot
103
103
  url = @routes.url_helpers.send("api_#{named_route}_url", :bot_id => params[:bot_id])
104
104
  end
105
105
 
106
- if method == :get
107
- response = RestClient.send(method, url, :params => params.merge(:api_key => @api_key))
108
- else
109
- response = RestClient.send(method, url, params.merge(:api_key => @api_key))
106
+ begin
107
+ if method == :get
108
+ response = RestClient.send(method, url, :params => params.merge(:api_key => @api_key))
109
+ else
110
+ response = RestClient.send(method, url, params.merge(:api_key => @api_key))
111
+ end
112
+ SuccessResponse.new(response)
113
+ rescue RestClient::Exception => e
114
+ FailureResponse.new(e.response)
115
+ end
116
+ end
117
+
118
+ class SuccessResponse
119
+ attr_reader :message, :data
120
+
121
+ def initialize(response)
122
+ data = JSON.parse(response.body, :symbolize_names => true)
123
+ @message = data[:message]
124
+ @data = data[:data]
110
125
  end
126
+ end
127
+
128
+ class FailureResponse
129
+ attr_reader :message, :data
111
130
 
112
- # TODO work out what to do here - wrap response in APIResponse?
113
- debugger
114
- if response.body.blank?
115
- {}
116
- else
117
- JSON.parse(response.body)
131
+ def initialize(response)
132
+ data = JSON.parse(response.body, :symbolize_names => true)
133
+ @error_code = data[:error_code]
134
+ @message = data[:message]
118
135
  end
119
136
  end
120
137
  end
@@ -1,3 +1,3 @@
1
1
  module Turbot
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: turbot-api
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Turbot