netdnarws 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/Gemfile CHANGED
@@ -1,5 +1,5 @@
1
1
  source "http://rubygems.org"
2
2
 
3
3
  gem "addressable"
4
- gem "signet"
4
+ gem "curb-fu"
5
5
  gemspec
@@ -1,3 +1,3 @@
1
1
  module NetDNARWS
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.2"
3
3
  end
data/lib/netdnarws.rb CHANGED
@@ -1,16 +1,8 @@
1
1
  require 'signet/oauth_1/client'
2
2
  require 'addressable/uri'
3
- require 'faraday/connection'
3
+ require 'curb-fu'
4
4
  require 'json'
5
5
 
6
- module Faraday
7
- class Request
8
- def url path, params=nil
9
- self.path = path
10
- end
11
- end
12
- end
13
-
14
6
  module NetDNARWS
15
7
  class NetDNA
16
8
  attr_accessor :client
@@ -58,33 +50,35 @@ module NetDNARWS
58
50
 
59
51
  request_options[:body] = _encode_params(attributes[0]) if options[:body]
60
52
  request = @request_signer.generate_authenticated_request(request_options)
61
- connection = Faraday::Connection.new
62
53
 
63
54
  begin
64
- response = connection.send method do |req|
65
- req.url _get_url(uri, attributes)
66
- req.headers = request.headers
67
- req.body = request.body if options[:body]
68
- end
55
+ response = CurbFu.send method,
56
+ url: _get_url(uri, attributes),
57
+ headers: request.headers,
58
+ data: (request.body if options[:body])
59
+
60
+ return response if options[:debug_request]
61
+
62
+ response_json = JSON.load(response.body)
69
63
 
70
- response_json = JSON.load(response.env[:body])
64
+ return response_json if options[:debug_json]
71
65
 
72
- if not (100..399).include? response.env[:status]
66
+ if not (response.success? or response.redirect?)
73
67
  error_message = response_json['error']['message']
74
- raise Exception.new("#{response.env[:status]}: #{error_message}")
68
+ raise Exception.new("#{response.status}: #{error_message}")
75
69
  end
76
70
  rescue TypeError
77
71
  raise Exception.new(
78
- "#{response.env[:status]}: No information supplied by the server"
72
+ "#{response.status}: No information supplied by the server"
79
73
  )
80
74
  end
81
75
 
82
76
  response_json
83
77
  end
84
78
 
85
- def get uri, options={}
79
+ def get uri, data={}, options={}
86
80
  options[:body] = false
87
- self._response_as_json 'get', uri, options
81
+ self._response_as_json 'get', uri, options, data
88
82
  end
89
83
 
90
84
  def post uri, data={}, options={}
@@ -97,9 +91,9 @@ module NetDNARWS
97
91
  self._response_as_json 'put', uri, options, data
98
92
  end
99
93
 
100
- def delete uri, options={}
94
+ def delete uri, data={}, options={}
101
95
  options[:body] = false
102
- self._response_as_json 'delete', uri, options
96
+ self._response_as_json 'delete', uri, options, data
103
97
  end
104
98
  end
105
99
  end
data/netdnarws.gemspec CHANGED
@@ -14,4 +14,5 @@ Gem::Specification.new do |gem|
14
14
  gem.authors = ["NetDNA Developer Team"]
15
15
  gem.add_dependency 'addressable'
16
16
  gem.add_dependency 'signet'
17
+ gem.add_dependency 'curb-fu'
17
18
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: netdnarws
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-08 00:00:00.000000000 Z
12
+ date: 2012-11-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: addressable
@@ -43,6 +43,22 @@ dependencies:
43
43
  - - ! '>='
44
44
  - !ruby/object:Gem::Version
45
45
  version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: curb-fu
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
46
62
  description: A Rest Client For NetDNA Rest Web Services
47
63
  email: devteam@netdna.com
48
64
  executables: []