unresponsys 0.0.6 → 0.0.7

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: 3db65d275faee24b555717b26df02af4ba5e3684
4
- data.tar.gz: 7df075d3c39fa2811466b27f52e50a6b558fc471
3
+ metadata.gz: 654fdf045b48c09867a92606442babc46558b77f
4
+ data.tar.gz: 28ee8d75033acf29035487701471b0286966be31
5
5
  SHA512:
6
- metadata.gz: fdd5952a174f298d1dd21a7079b0a6385998233bd9d95d1338569e0a79920527e6af43456782a681248a1b037d1ef28ca089b5abc4e5be120a09b18cb5f3a9e7
7
- data.tar.gz: 9778034e84170dbb22e97a53a963bc519de92b97d99b88ef12866cb4fb677c6601ef4e501402fa8f820fc9a46411a1c06488397bc3a7fb06b87df3868cdf5e85
6
+ metadata.gz: a9f2e71ce44a02277286aa746978ce170382661e99bb9391025bcf2538b2e742c064d6556f49aa632894a44713e6cb30892166c551d55abe56736b6262847fb4
7
+ data.tar.gz: 8eb137a5edf619e4adde926469a014ee0537cb0dcd2b49e4349f81d6f42cb15275afd9a1d5fc60dfbf2334709b5ec38e6ad26b69f2438a1f97c7d3f29f165a09
@@ -5,53 +5,37 @@ class Unresponsys
5
5
  include HTTParty
6
6
 
7
7
  def initialize(options = {})
8
- @@username ||= options[:username]
9
- @@password ||= options[:password]
8
+ raise Unresponsys::ArgumentError, 'Username is required' unless options[:username]
9
+ @username = options[:username]
10
+
11
+ raise Unresponsys::ArgumentError, 'Password is required' unless options[:password]
12
+ @password = options[:password]
13
+
10
14
  raise Unresponsys::Error, 'Could not authenticate' unless authenticate
15
+
11
16
  self.class.debug_output($stdout) if options[:debug]
12
17
  end
13
18
 
14
19
  def self.get(path, options = {}, &block)
15
- begin
16
- r = perform_request Net::HTTP::Get, path, options, &block
17
- handle_error(r)
18
- rescue Unresponsys::Retry
19
- r = perform_request Net::HTTP::Get, path, options, &block
20
- handle_error(r)
21
- end
20
+ r = perform_request Net::HTTP::Get, path, options, &block
21
+ handle_error(r)
22
22
  end
23
23
 
24
24
  def self.post(path, options = {}, &block)
25
- begin
26
- r = perform_request Net::HTTP::Post, path, options, &block
27
- handle_error(r)
28
- rescue Unresponsys::Retry
29
- r = perform_request Net::HTTP::Post, path, options, &block
30
- handle_error(r)
31
- end
25
+ r = perform_request Net::HTTP::Post, path, options, &block
26
+ handle_error(r)
32
27
  end
33
28
 
34
29
  def self.delete(path, options = {}, &block)
35
- begin
36
- r = perform_request Net::HTTP::Delete, path, options, &block
37
- handle_error(r)
38
- rescue Unresponsys::Retry
39
- r = perform_request Net::HTTP::Delete, path, options, &block
40
- handle_error(r)
41
- end
30
+ r = perform_request Net::HTTP::Delete, path, options, &block
31
+ handle_error(r)
42
32
  end
43
33
 
44
34
  private
45
35
 
46
36
  def self.handle_error(response)
47
37
  if response.is_a?(Hash) && response.keys.include?('errorCode')
48
- if response['title'].include?('token expired')
49
- self.new
50
- raise Unresponsys::Retry
51
- end
52
- if response['title'].include?('not found')
53
- raise Unresponsys::NotFoundError, response['detail']
54
- end
38
+ raise Unresponsys::NotFoundError, response['detail'] if response['title'].include?('not found')
55
39
  raise Unresponsys::Error, "#{response['title']} - #{response['detail']}"
56
40
  end
57
41
  response
@@ -59,7 +43,7 @@ class Unresponsys
59
43
 
60
44
  def authenticate
61
45
  self.class.headers('Content-Type' => 'application/x-www-form-urlencoded')
62
- body = { user_name: @@username, password: @@password, auth_type: 'password' }
46
+ body = { user_name: @username, password: @password, auth_type: 'password' }
63
47
  r = self.class.post('https://login2.responsys.net/rest/api/v1/auth/token', body: body)
64
48
  return false unless r.success?
65
49
  self.class.headers('Authorization' => r['authToken'], 'Content-Type' => 'application/json')
@@ -2,5 +2,4 @@ class Unresponsys
2
2
  class ArgumentError < StandardError; end
3
3
  class Error < StandardError; end
4
4
  class NotFoundError < StandardError; end
5
- class Retry < StandardError; end
6
5
  end
@@ -1,3 +1,3 @@
1
1
  class Unresponsys
2
- VERSION = '0.0.6'
2
+ VERSION = '0.0.7'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: unresponsys
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kevin Kimball
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-01 00:00:00.000000000 Z
11
+ date: 2015-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: httparty