tiramizoo 0.1.9 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c5e938e60cc50b2644d5cdd7201e72a7052b2ef1
4
- data.tar.gz: bfe12e64de2a541dab8235f74f70d330aec0e1fe
3
+ metadata.gz: 9b2c355314ff771cfa5258c36aa2519a6ff7d95e
4
+ data.tar.gz: de36ba269b5ee0166755a240734816e33716038f
5
5
  SHA512:
6
- metadata.gz: 0be5860d11f7849d3b7999aae9decd1c5e915c756a9be70212f3ea78ac1e9078a8b4b4d92f518e71d015c4335c198fd1857f9a25f2b40539751db11d5010d929
7
- data.tar.gz: 5fd1e219ffdc63463ca85a1d1c464027593972433d47a90427b1154de2cab71fcacbac73a100caa63e59de5e01e0c3642a30fb926bcac12c5faa3182b6c43ee8
6
+ metadata.gz: db3c9d45c84069cd5eef2851b2e71ee2f6bcf2f9d64d1bb6870a9fa01b66b36bba399e503b6cfb4b87fb1a10e928b019f7ca1a1e8e231dfe0e1348b4843a0aee
7
+ data.tar.gz: 2f37d5a936372e63be8b7771359432964d5d3f3165bf76b727144140211f2f87a9676a99dcaf2df3a4a1a63003d6de99dd8ec6306b4b6583a2c34d7a9ce54204
@@ -5,6 +5,7 @@ module Tiramizoo
5
5
  class Api
6
6
  class InvalidApiToken < StandardError; end
7
7
  class ServerError < StandardError; end
8
+ class NotFound < StandardError; end
8
9
  class UnprocessableEntity < StandardError; end
9
10
  class ServerIsUndergoingMaintenance < StandardError; end
10
11
  class UnknownError < StandardError; end
@@ -119,6 +120,36 @@ module Tiramizoo
119
120
  end
120
121
  end
121
122
 
123
+ def cancel_order(order_identifier)
124
+ body = {
125
+ "state" => "cancelled",
126
+ "cancellation_reason" => "user"
127
+ }
128
+
129
+ response = connection.put({
130
+ :path => "/api/v1/orders/#{order_identifier}",
131
+ :headers => {"Api-Token" => api_token, "Content-Type" => "application/json"},
132
+ :body => body.to_json
133
+ })
134
+
135
+ case response.status
136
+ when 200
137
+ JSON.parse(response.body)
138
+ when 401
139
+ raise InvalidApiToken
140
+ when 404
141
+ raise NotFound
142
+ when 422
143
+ raise UnprocessableEntity.new(response.body.force_encoding("utf-8"))
144
+ when 500
145
+ raise ServerError
146
+ when 503
147
+ raise ServerIsUndergoingMaintenance
148
+ else
149
+ raise UnknownError
150
+ end
151
+ end
152
+
122
153
  def calculate_distance(origin, destination)
123
154
  response = connection.get({
124
155
  :path => "/api/v1/distance",
@@ -1,3 +1,3 @@
1
1
  module Tiramizoo
2
- VERSION = "0.1.9"
2
+ VERSION = "0.2.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tiramizoo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tiramizoo
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-04-06 00:00:00.000000000 Z
11
+ date: 2016-08-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: excon