ruby-jet 0.5.0 → 0.6.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: 5190b45ea661721139ce27889e32faf90a8849ec
4
- data.tar.gz: fbf8feb37324ec7e2a2cd328cc12cd32bc8cdd61
3
+ metadata.gz: ffd0b98c1113276596df5721354d63e19984bd9d
4
+ data.tar.gz: ace62bd2d6dadbee4b05ec2c45473a0efb1c5159
5
5
  SHA512:
6
- metadata.gz: c720821aa867dc50127be31fd02898bbbbb9a5f6b17547cd5853204c743d0475f98052202d52fc1c08d8256521659f9cd7d63950d2f5b6e157c9d4961bbc7238
7
- data.tar.gz: d46c4d94597545aad8314813b0ac93d27c007813382567867fa7de689ddac6cd03ab37d0810fc9c09d6eb8e88c1093f9a459b71b3010439f618c60288ad5e8bb
6
+ metadata.gz: 69ee0a26c38782a3f41840567e781a3006f3df4e80345c87ed3924a0a9876a82f54096a1179b25b098a1e8a4e2b7109c02d8f75777c89ce827d59ed812060534
7
+ data.tar.gz: 28ae7db1a3ec791e56a74c32416ef02c02fe6253ef654e873be156d2ac64a887d2571b882af298b7f54c899803e319b0aa0af67277733d7af2db752ca6b6bfc0
@@ -1,5 +1,5 @@
1
1
  require 'rest-client'
2
- require 'json'
2
+ require 'oj'
3
3
  require 'zlib'
4
4
  require 'stringio'
5
5
 
@@ -20,14 +20,14 @@ class Jet::Client::Files
20
20
  gz.close
21
21
  gzipped_body = io.string
22
22
  response = RestClient.put(url, gzipped_body, headers)
23
- JSON.parse(response.body) if response.code == 200
23
+ @client.decode_json(response.body) if response.code == 200
24
24
  end
25
25
 
26
26
  def uploaded_files(url, file_type, file_name)
27
27
  headers = @client.token
28
28
  body = { url: url, file_type: file_type, file_name: file_name }
29
- response = RestClient.post("#{Jet::Client::API_URL}/files/uploaded", body.to_json, headers)
30
- JSON.parse(response.body) if response.code == 200
29
+ response = RestClient.post("#{Jet::Client::API_URL}/files/uploaded", @client.encode_json(body), headers)
30
+ @client.decode_json(response.body) if response.code == 200
31
31
  end
32
32
 
33
33
  def jet_file_id(file_id)
@@ -1,5 +1,4 @@
1
1
  require 'rest-client'
2
- require 'json'
3
2
 
4
3
  class Jet::Client::Orders
5
4
 
@@ -1,5 +1,4 @@
1
1
  require 'rest-client'
2
- require 'json'
3
2
 
4
3
  class Jet::Client::Products
5
4
  def initialize(client)
@@ -38,4 +37,3 @@ class Jet::Client::Products
38
37
  @client.rest_get_with_token('/merchant-skus', params)
39
38
  end
40
39
  end
41
-
@@ -1,5 +1,4 @@
1
1
  require 'rest-client'
2
- require 'json'
3
2
 
4
3
  class Jet::Client::Returns
5
4
 
@@ -27,10 +26,6 @@ class Jet::Client::Returns
27
26
  @client.rest_get_with_token("/returns/state/#{return_id}")
28
27
  end
29
28
 
30
- def acknowledge_return(return_id, body = {})
31
- @client.rest_put_with_token("/returns/#{return_id}/acknowledge", body)
32
- end
33
-
34
29
  def complete_return(return_id, body = {})
35
30
  @client.rest_put_with_token("/returns/#{return_id}/complete", body)
36
31
  end
@@ -1,5 +1,4 @@
1
1
  require 'rest-client'
2
- require 'json'
3
2
 
4
3
  class Jet::Client::Taxonomy
5
4
  def initialize(client)
data/lib/jet/client.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  require 'rest-client'
2
- require 'json'
2
+ require 'oj'
3
3
 
4
4
  class Jet::Client
5
5
  API_URL = 'https://merchant-api.jet.com/api'
@@ -10,14 +10,22 @@ class Jet::Client
10
10
  @merchant_id = config[:merchant_id]
11
11
  end
12
12
 
13
+ def encode_json(data)
14
+ Oj.dump(data, mode: :compat)
15
+ end
16
+
17
+ def decode_json(json)
18
+ Oj.load(json)
19
+ end
20
+
13
21
  def token
14
22
  if not (@id_token and @token_type and @expires_on > Time.now)
15
23
  body = {
16
24
  user: @api_user,
17
25
  pass: @secret
18
26
  }
19
- response = RestClient.post("#{API_URL}/token", body.to_json)
20
- parsed_response = JSON.parse(response.body)
27
+ response = RestClient.post("#{API_URL}/token", encode_json(body))
28
+ parsed_response = decode_json(response.body)
21
29
  @id_token = parsed_response['id_token']
22
30
  @token_type = parsed_response['token_type']
23
31
  @expires_on = Time.parse(parsed_response['expires_on'])
@@ -30,13 +38,13 @@ class Jet::Client
30
38
  headers = token
31
39
  headers.merge!({ params: query_params }) unless query_params.empty?
32
40
  response = RestClient.get("#{API_URL}#{path}", headers)
33
- JSON.parse(response.body) if response.code == 200
41
+ decode_json(response.body) if response.code == 200
34
42
  end
35
43
 
36
44
  def rest_put_with_token(path, body = {})
37
45
  headers = token
38
46
  response = RestClient.put("#{API_URL}#{path}", body.to_json, headers)
39
- JSON.parse(response.body) if response.code == 200
47
+ decode_json(response.body) if response.code == 200
40
48
  end
41
49
 
42
50
  def orders
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-jet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jason Wells
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-04-06 00:00:00.000000000 Z
11
+ date: 2016-05-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
@@ -25,19 +25,19 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.8'
27
27
  - !ruby/object:Gem::Dependency
28
- name: json
28
+ name: oj
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.8'
33
+ version: '2.15'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.8'
40
+ version: '2.15'
41
41
  description: Jet API service calls implemented in Ruby
42
42
  email:
43
43
  - flipstock@gmail.com