sessionm-resthome 0.8.1 → 0.8.5

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/.rvmrc ADDED
@@ -0,0 +1 @@
1
+ rvm 1.9.3-p327@resthome
data/Gemfile CHANGED
@@ -2,15 +2,17 @@ source "http://rubygems.org"
2
2
  # Add dependencies required to use your gem here.
3
3
  # Example:
4
4
  # gem "activesupport", ">= 2.3.5"
5
- gem "httparty", ">= 0"
5
+ gem "httparty", ">= 0.11.0"
6
6
 
7
7
  # Add dependencies to develop your gem here.
8
8
  # Include everything needed to run rake, tests, features, etc.
9
9
  group :development do
10
- gem "bundler", "~> 1.0.0"
11
- gem "jeweler", "~> 1.5.1"
12
- gem "rcov", ">= 0"
13
- gem "fakeweb", ">= 0"
14
- gem "json", ">= 0"
15
- gem "rspec", ">= 0"
10
+ gem "rdoc", "~> 3.12"
11
+ gem "jeweler", "~> 1.8.4"
12
+ gem "rspec"
13
+ gem "rspec-core"
14
+ gem "rspec-mocks"
15
+ gem 'rspec-expectations'
16
+ gem 'json'
17
+ gem 'fakeweb'
16
18
  end
data/Gemfile.lock CHANGED
@@ -1,28 +1,39 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- crack (0.1.8)
5
- fakeweb (1.2.8)
4
+ diff-lcs (1.2.4)
5
+ fakeweb (1.3.0)
6
6
  git (1.2.5)
7
- httparty (0.6.1)
8
- crack (= 0.1.8)
9
- jeweler (1.5.1)
10
- bundler (~> 1.0.0)
7
+ httparty (0.11.0)
8
+ multi_json (~> 1.0)
9
+ multi_xml (>= 0.5.2)
10
+ jeweler (1.8.4)
11
+ bundler (~> 1.0)
11
12
  git (>= 1.2.5)
12
13
  rake
13
- json (1.2.4)
14
- rake (0.8.7)
15
- rcov (0.9.8)
14
+ rdoc
15
+ json (1.8.0)
16
+ multi_json (1.7.4)
17
+ multi_xml (0.5.3)
18
+ rake (10.0.4)
19
+ rdoc (3.12.2)
20
+ json (~> 1.4)
16
21
  rspec (1.3.0)
22
+ rspec-core (2.13.1)
23
+ rspec-expectations (2.13.0)
24
+ diff-lcs (>= 1.1.3, < 2.0)
25
+ rspec-mocks (2.13.1)
17
26
 
18
27
  PLATFORMS
19
28
  ruby
20
29
 
21
30
  DEPENDENCIES
22
- bundler (~> 1.0.0)
23
31
  fakeweb
24
- httparty
25
- jeweler (~> 1.5.1)
32
+ httparty (>= 0.11.0)
33
+ jeweler (~> 1.8.4)
26
34
  json
27
- rcov
35
+ rdoc (~> 3.12)
28
36
  rspec
37
+ rspec-core
38
+ rspec-expectations
39
+ rspec-mocks
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # encoding: utf-8
2
+
1
3
  require 'rubygems'
2
4
  require 'bundler'
3
5
  begin
@@ -12,23 +14,19 @@ require 'rake'
12
14
  require 'jeweler'
13
15
  Jeweler::Tasks.new do |gem|
14
16
  # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
15
- gem.name = "resthome"
16
- gem.homepage = "http://github.com/cykod/resthome"
17
+ gem.name = "sessionm-resthome"
18
+ gem.homepage = "http://github.com/sessionm/resthome"
17
19
  gem.license = "MIT"
18
20
  gem.summary = %Q{RESTful web services consumer}
19
21
  gem.description = %Q{Simple wrapper class generator for consuming RESTful web services}
20
- gem.email = "doug@cykod.com"
22
+ gem.email = "doug@sessionm.com"
21
23
  gem.authors = ["Doug Youch"]
22
- # Include your dependencies below. Runtime dependencies are required when using your gem,
23
- # and development dependencies are only needed for development (ie running rake tasks, tests, etc)
24
- # gem.add_runtime_dependency 'jabber4r', '> 0.1'
25
- # gem.add_development_dependency 'rspec', '> 1.2.3'
26
24
  end
27
25
  Jeweler::RubygemsDotOrgTasks.new
28
26
 
29
27
  task :default => :spec
30
28
 
31
- require 'rake/rdoctask'
29
+ require 'rdoc/task'
32
30
  Rake::RDocTask.new do |rdoc|
33
31
  version = File.exist?('VERSION') ? File.read('VERSION') : ""
34
32
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.8.0
1
+ 0.8.5
@@ -0,0 +1,177 @@
1
+ require 'resthome'
2
+ require 'json'
3
+
4
+ class SendGridWebService < RESTHome
5
+ base_uri 'https://sendgrid.com'
6
+
7
+ namespace '/api' do
8
+ # Profile
9
+ route :profile, '/profile.get.json', :method => :post, :no_body => true
10
+ route :set_profile, '/profile.set.json', :method => :post
11
+ route :set_password, '/password.set.json', :method => :post
12
+ route :set_username, '/profile.setUsername.json', :method => :post
13
+ route :set_contact_email, '/profile.setEmail.json', :method => :post
14
+
15
+ # Bounces
16
+ route :bounces, '/bounces.get.json', :method => :post, :no_body => true
17
+ # delete_bounce 'email' => 'email@to.delete'
18
+ route :delete_bounce, '/bounces.delete.json', :method => :post
19
+
20
+ # Unsubscribes
21
+ route :unsubscribes, '/unsubscribes.get.json', :method => :post, :no_body => true
22
+ # delete_unsubscribes 'email' => 'email@to.delete'
23
+ route :delete_unsubscribes, '/unsubscribes.delete.json', :method => :post
24
+ # add_unsubscribes 'email' => 'email@to.add'
25
+ route :add_unsubscribes, '/unsubscribes.add.json', :method => :post
26
+
27
+ # Spam Reports
28
+ route :spam_reports, '/spamreports.get.json', :method => :post, :no_body => true
29
+ # delete_spam_reports 'email' => 'email@to.delete'
30
+ route :delete_spam_reports, '/spamreports.delete.json', :method => :post
31
+
32
+ # Invalid Emails
33
+ route :invalid_emails, '/invalidemails.get.json', :method => :post, :no_body => true
34
+ # delete_invalid_emails 'email' => 'email@to.delete'
35
+ route :delete_invalid_emails, '/invalidemails.delete.json', :method => :post
36
+
37
+ # Statistics
38
+ route :stats, '/stats.get.json', :method => :post
39
+
40
+ # Event Notification Url
41
+ route :notification_url, '/eventposturl.get.json', :method => :post, :no_body => true
42
+ # set_notification_url 'url' => 'http://www.YourPostUrlHere.com'
43
+ route :set_notification_url, '/eventposturl.set.json', :method => :post
44
+ route :delete_notification_url, '/eventposturl.delete.json', :method => :post, :no_body => true
45
+
46
+ # Reseller: Users
47
+ route :users, '/user.profile.json', :method => :post
48
+ route :disable_user, '/user.disable.json', :method => :post
49
+ route :enable_user, '/user.enable.json', :method => :post
50
+ route :add_user, '/user.add.json', :method => :post
51
+ route :set_user_password, '/user.password.json', :method => :post
52
+
53
+ # Reseller: User Statistics
54
+ route :user_stats, '/user.stats.json', :method => :post
55
+
56
+ # Reseller: User Bounces
57
+ route :user_bounces, '/user.bounces.json', :method => :post
58
+ end
59
+
60
+ def initialize(username, password)
61
+ @username = username
62
+ @password = password
63
+ end
64
+
65
+ def parse_response!; end
66
+
67
+ def get_profile
68
+ data = self.profile
69
+ data = data[0] if data.is_a?(Array)
70
+ data
71
+ end
72
+
73
+ def edit_profile(body)
74
+ self.set_profile body
75
+ end
76
+
77
+ def reset_password(new_password)
78
+ data = self.set_password 'password' => new_password, 'confirm_password' => new_password
79
+ if data.is_a?(Hash) && data['message'] == 'success'
80
+ @password = new_password
81
+ end
82
+ data
83
+ end
84
+
85
+ def update_username(new_username)
86
+ data = self.set_username 'username' => new_username
87
+ if data.is_a?(Hash) && data['message'] == 'success'
88
+ @username = new_username
89
+ end
90
+ data
91
+ end
92
+
93
+ def update_contact_email(email)
94
+ self.set_contact_email 'email' => email
95
+ end
96
+
97
+ def get_bounces(date=1)
98
+ self.bounces :body => {'date' => date}
99
+ end
100
+
101
+ def get_unsubscribes(date=1)
102
+ self.unsubscribes :body => {'date' => date}
103
+ end
104
+
105
+ def get_spam_reports(date=1)
106
+ self.spam_reports :body => {'date' => date}
107
+ end
108
+
109
+ def get_invalid_emails(date=1)
110
+ self.invalid_emails :body => {'date' => date}
111
+ end
112
+
113
+ def get_stats_by_days(days=2, category=nil)
114
+ data = self.stats 'days' => days, 'category' => category
115
+ data = data[0] if data.is_a?(Array) && category && category.is_a?(String)
116
+ data
117
+ end
118
+
119
+ def get_stats_by_range(start_date, end_date, category=nil)
120
+ start_date = start_date.to_s('%Y-%m-%d') if start_date.is_a?(Time)
121
+ end_date = end_date.to_s('%Y-%m-%d') if end_date.is_a?(Time)
122
+ data = self.stats 'start_date' => start_date, 'end_date' => end_date, 'category' => category
123
+ data = data[0] if data.is_a?(Array) && category && category.is_a?(String)
124
+ data
125
+ end
126
+
127
+ def get_all_time_totals(category=nil)
128
+ data = self.stats 'aggregate' => 1, 'category' => category
129
+ data = data[0] if data.is_a?(Array) && category && category.is_a?(String)
130
+ data
131
+ end
132
+
133
+ def get_categories
134
+ self.stats 'list' => 'true'
135
+ end
136
+
137
+ def get_notification_url
138
+ data = self.notification_url
139
+ data = data[0] if data.is_a?(Array)
140
+ data
141
+ end
142
+
143
+ # Reseller methods
144
+ def get_users
145
+ self.users 'task' => 'get'
146
+ end
147
+
148
+ def get_user(username)
149
+ data = self.users 'task' => 'get', 'username' => username
150
+ data = data[0] if data.is_a?(Array)
151
+ data
152
+ end
153
+
154
+ def edit_user(username, fields={})
155
+ self.users fields.merge('task' => 'set', 'user' => username)
156
+ end
157
+
158
+ def reset_user_password(username, new_password)
159
+ self.set_user_password 'user' => username, 'password' => new_password, 'confirm_password' => new_password
160
+ end
161
+
162
+ def change_user_username(username, new_username)
163
+ self.users 'task' => 'setUsername', 'user' => username, 'username' => new_username
164
+ end
165
+
166
+ def change_user_email(username, email)
167
+ self.users 'task' => 'setEmail', 'user' => username, 'email' => email
168
+ end
169
+
170
+ def build_options!(options)
171
+ super
172
+ options[:body] ||= {}
173
+ options[:body]['api_user'] = @username
174
+ options[:body]['api_key'] = @password
175
+ options[:body].delete('category') if options[:body].has_key?('category') && options[:body]['category'].nil?
176
+ end
177
+ end
@@ -0,0 +1,17 @@
1
+ class RESTHome
2
+ def request_with_instrumentation(method, path, options)
3
+ ActiveSupport::Notifications.instrument("request.resthome", :client => self.class.name, method: method, path: path) do
4
+ request_without_instrumentation(method, path, options)
5
+ end
6
+ end
7
+
8
+ alias_method_chain :request, :instrumentation
9
+
10
+ class LogSubscriber < ActiveSupport::LogSubscriber
11
+ def request(event)
12
+ info '%s (%.1fms) %s %s' % [event.payload[:client], event.duration, event.payload[:method].upcase, event.payload[:path]]
13
+ end
14
+ end
15
+ end
16
+
17
+ RESTHome::LogSubscriber.attach_to :resthome
@@ -0,0 +1,55 @@
1
+ class AsyncConnectionAdapter < HTTParty::ConnectionAdapter
2
+
3
+ # convert EventMachine::HttpClient to a Net::HTTPResponse
4
+ class AsyncHTTPResponse < Net::HTTPResponse
5
+ def initialize(client)
6
+ headers = client.response_header
7
+ super headers.http_version, headers.http_status, headers.http_reason
8
+ @body = client.response
9
+ @read = true
10
+ headers.each do |k, v|
11
+ self.add_field k, v
12
+ end
13
+ end
14
+ end
15
+
16
+ # add a request method to EventMachine::HttpConnection to simulate how Net::HTTP works
17
+ class AsyncHTTPConnection < EventMachine::HttpConnection
18
+ def request(raw_request)
19
+ case raw_request
20
+ when Net::HTTP::Get
21
+ AsyncHTTPResponse.new self.get
22
+ when Net::HTTP::Post
23
+ AsyncHTTPResponse.new self.post
24
+ when Net::HTTP::Put
25
+ AsyncHTTPResponse.new self.put
26
+ when Net::HTTP::Delete
27
+ AsyncHTTPResponse.new self.delete
28
+ when Net::HTTP::Head
29
+ AsyncHTTPResponse.new self.head
30
+ else
31
+ raise "unknown request type #{raw_request}"
32
+ end
33
+ end
34
+ end
35
+
36
+ def initialize(uri, options)
37
+ @uri = uri
38
+ @options = options
39
+ end
40
+
41
+ def connection
42
+ AsyncHTTPConnection.new.tap do |c|
43
+ c.connopts = HttpConnectionOptions.new(@uri, @options)
44
+ c.uri = @uri
45
+ end
46
+ end
47
+
48
+ def self.call(uri, options)
49
+ if EM.reactor_running?
50
+ self.new(uri, options).connection
51
+ else
52
+ HTTParty::ConnectionAdapter.call uri, options
53
+ end
54
+ end
55
+ end
@@ -0,0 +1,58 @@
1
+ class PersistentConnectionAdapter < HTTParty::ConnectionAdapter
2
+
3
+ # basically just reconnect if you get an EOFError
4
+ class PersistentHTTP < Net::HTTP
5
+ def request_with_retry(req, body = nil, &block)
6
+ begin
7
+ request_without_retry req, body, &block
8
+ rescue EOFError => e # means the server closed the connection most likely
9
+ @socket.close if @socket and not @socket.closed?
10
+ connect
11
+ request_without_retry req, body, &block
12
+ end
13
+ end
14
+ alias request_without_retry request
15
+ alias request request_with_retry
16
+ end
17
+
18
+ # copied from HTTParty::ConnectionAdapter
19
+ def connection
20
+ PersistentHTTP.new(clean_host(uri.host), uri.port, options[:http_proxyaddr], options[:http_proxyport], options[:http_proxyuser], options[:http_proxypass]).tap do |http|
21
+ http.use_ssl = ssl_implied?(uri)
22
+
23
+ attach_ssl_certificates(http, options)
24
+
25
+ if options[:timeout] && (options[:timeout].is_a?(Integer) || options[:timeout].is_a?(Float))
26
+ http.open_timeout = options[:timeout]
27
+ http.read_timeout = options[:timeout]
28
+ end
29
+
30
+ if options[:debug_output]
31
+ http.set_debug_output(options[:debug_output])
32
+ end
33
+
34
+ if options[:ciphers]
35
+ http.ciphers = options[:ciphers]
36
+ end
37
+ end
38
+ end
39
+
40
+ def self.start(uri, options)
41
+ @conn ||= new(uri, options).connection.tap { |c| c.start }
42
+ end
43
+
44
+ def self.close
45
+ if @conn
46
+ @conn.finish if @conn.started?
47
+ @conn = nil
48
+ end
49
+ end
50
+
51
+ def self.conn
52
+ @conn
53
+ end
54
+
55
+ def self.call(uri, options)
56
+ self.start uri, options
57
+ end
58
+ end
data/lib/resthome.rb CHANGED
@@ -300,7 +300,7 @@ class RESTHome
300
300
  # Parse an array of Set-cookie headers
301
301
  def save_cookies(data)
302
302
  @cookies ||= {}
303
- data.delete_if{ |c| c.blank? }.collect { |cookie| parts = cookie.split("\; "); parts[0] ? parts[0].split('=') : nil }.each do |c|
303
+ data.delete_if{ |c| c.nil? || c.empty? }.collect { |cookie| parts = cookie.split("\; "); parts[0] ? parts[0].split('=') : nil }.each do |c|
304
304
  @cookies[c[0].strip] = c[1].strip if c && c[0] && c[1]
305
305
  end
306
306
  end
@@ -338,7 +338,7 @@ class RESTHome
338
338
  end
339
339
 
340
340
  def _handle_response_object(obj, opts={}) #:nodoc:
341
- obj = obj[opts[:resource]] unless opts[:resource].blank?
341
+ obj = obj[opts[:resource]] if opts[:resource]
342
342
  if opts[:return]
343
343
  if opts[:return].is_a?(Class)
344
344
  obj = opts[:return].new obj
@@ -0,0 +1,86 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "sessionm-resthome"
8
+ s.version = "0.8.5"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Doug Youch"]
12
+ s.date = "2013-05-31"
13
+ s.description = "Simple wrapper class generator for consuming RESTful web services"
14
+ s.email = "doug@sessionm.com"
15
+ s.extra_rdoc_files = [
16
+ "LICENSE.txt",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".rvmrc",
22
+ "Gemfile",
23
+ "Gemfile.lock",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "examples/amazon_product_web_service.rb",
29
+ "examples/amazon_ses_service.rb",
30
+ "examples/chargify_web_service.rb",
31
+ "examples/last_fm_web_service.rb",
32
+ "examples/send_grid_web_service.rb",
33
+ "examples/twilio_web_service.rb",
34
+ "examples/wordpress_web_service.rb",
35
+ "lib/active_support/instrumentation.rb",
36
+ "lib/resthome.rb",
37
+ "lib/resthome/httparty/async_connection_adapter.rb",
38
+ "lib/resthome/httparty/persistent_connection_adapter.rb",
39
+ "sessionm-resthome.gemspec",
40
+ "spec/helper.rb",
41
+ "spec/lib/resthome_spec.rb",
42
+ "tasks/spec.rake"
43
+ ]
44
+ s.homepage = "http://github.com/sessionm/resthome"
45
+ s.licenses = ["MIT"]
46
+ s.require_paths = ["lib"]
47
+ s.rubygems_version = "1.8.23"
48
+ s.summary = "RESTful web services consumer"
49
+
50
+ if s.respond_to? :specification_version then
51
+ s.specification_version = 3
52
+
53
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
54
+ s.add_runtime_dependency(%q<httparty>, [">= 0.11.0"])
55
+ s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
56
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
57
+ s.add_development_dependency(%q<rspec>, [">= 0"])
58
+ s.add_development_dependency(%q<rspec-core>, [">= 0"])
59
+ s.add_development_dependency(%q<rspec-mocks>, [">= 0"])
60
+ s.add_development_dependency(%q<rspec-expectations>, [">= 0"])
61
+ s.add_development_dependency(%q<json>, [">= 0"])
62
+ s.add_development_dependency(%q<fakeweb>, [">= 0"])
63
+ else
64
+ s.add_dependency(%q<httparty>, [">= 0.11.0"])
65
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
66
+ s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
67
+ s.add_dependency(%q<rspec>, [">= 0"])
68
+ s.add_dependency(%q<rspec-core>, [">= 0"])
69
+ s.add_dependency(%q<rspec-mocks>, [">= 0"])
70
+ s.add_dependency(%q<rspec-expectations>, [">= 0"])
71
+ s.add_dependency(%q<json>, [">= 0"])
72
+ s.add_dependency(%q<fakeweb>, [">= 0"])
73
+ end
74
+ else
75
+ s.add_dependency(%q<httparty>, [">= 0.11.0"])
76
+ s.add_dependency(%q<rdoc>, ["~> 3.12"])
77
+ s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
78
+ s.add_dependency(%q<rspec>, [">= 0"])
79
+ s.add_dependency(%q<rspec-core>, [">= 0"])
80
+ s.add_dependency(%q<rspec-mocks>, [">= 0"])
81
+ s.add_dependency(%q<rspec-expectations>, [">= 0"])
82
+ s.add_dependency(%q<json>, [">= 0"])
83
+ s.add_dependency(%q<fakeweb>, [">= 0"])
84
+ end
85
+ end
86
+
data/spec/helper.rb CHANGED
@@ -9,7 +9,6 @@ rescue Bundler::BundlerError => e
9
9
  exit e.status_code
10
10
  end
11
11
 
12
- require 'spec/autorun'
13
12
  require 'fakeweb'
14
13
  require 'json'
15
14
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sessionm-resthome
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.1
4
+ version: 0.8.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,44 +9,59 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-03-09 00:00:00.000000000Z
12
+ date: 2013-05-31 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
16
- requirement: &70365222134780 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: '0'
21
+ version: 0.11.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70365222134780
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.11.0
25
30
  - !ruby/object:Gem::Dependency
26
- name: bundler
27
- requirement: &70365222134300 !ruby/object:Gem::Requirement
31
+ name: rdoc
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ~>
31
36
  - !ruby/object:Gem::Version
32
- version: 1.0.0
37
+ version: '3.12'
33
38
  type: :development
34
39
  prerelease: false
35
- version_requirements: *70365222134300
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '3.12'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: jeweler
38
- requirement: &70365222133820 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ~>
42
52
  - !ruby/object:Gem::Version
43
- version: 1.5.1
53
+ version: 1.8.4
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *70365222133820
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: 1.8.4
47
62
  - !ruby/object:Gem::Dependency
48
- name: rcov
49
- requirement: &70365222149700 !ruby/object:Gem::Requirement
63
+ name: rspec
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '0'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *70365222149700
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  - !ruby/object:Gem::Dependency
59
- name: fakeweb
60
- requirement: &70365222149220 !ruby/object:Gem::Requirement
79
+ name: rspec-core
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,10 +85,47 @@ dependencies:
65
85
  version: '0'
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *70365222149220
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
94
+ - !ruby/object:Gem::Dependency
95
+ name: rspec-mocks
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: rspec-expectations
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ! '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ! '>='
124
+ - !ruby/object:Gem::Version
125
+ version: '0'
69
126
  - !ruby/object:Gem::Dependency
70
127
  name: json
71
- requirement: &70365222148740 !ruby/object:Gem::Requirement
128
+ requirement: !ruby/object:Gem::Requirement
72
129
  none: false
73
130
  requirements:
74
131
  - - ! '>='
@@ -76,10 +133,15 @@ dependencies:
76
133
  version: '0'
77
134
  type: :development
78
135
  prerelease: false
79
- version_requirements: *70365222148740
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ! '>='
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
80
142
  - !ruby/object:Gem::Dependency
81
- name: rspec
82
- requirement: &70365222148260 !ruby/object:Gem::Requirement
143
+ name: fakeweb
144
+ requirement: !ruby/object:Gem::Requirement
83
145
  none: false
84
146
  requirements:
85
147
  - - ! '>='
@@ -87,7 +149,12 @@ dependencies:
87
149
  version: '0'
88
150
  type: :development
89
151
  prerelease: false
90
- version_requirements: *70365222148260
152
+ version_requirements: !ruby/object:Gem::Requirement
153
+ none: false
154
+ requirements:
155
+ - - ! '>='
156
+ - !ruby/object:Gem::Version
157
+ version: '0'
91
158
  description: Simple wrapper class generator for consuming RESTful web services
92
159
  email: doug@sessionm.com
93
160
  executables: []
@@ -97,6 +164,7 @@ extra_rdoc_files:
97
164
  - README.rdoc
98
165
  files:
99
166
  - .document
167
+ - .rvmrc
100
168
  - Gemfile
101
169
  - Gemfile.lock
102
170
  - LICENSE.txt
@@ -107,10 +175,14 @@ files:
107
175
  - examples/amazon_ses_service.rb
108
176
  - examples/chargify_web_service.rb
109
177
  - examples/last_fm_web_service.rb
178
+ - examples/send_grid_web_service.rb
110
179
  - examples/twilio_web_service.rb
111
180
  - examples/wordpress_web_service.rb
181
+ - lib/active_support/instrumentation.rb
112
182
  - lib/resthome.rb
113
- - resthome.gemspec
183
+ - lib/resthome/httparty/async_connection_adapter.rb
184
+ - lib/resthome/httparty/persistent_connection_adapter.rb
185
+ - sessionm-resthome.gemspec
114
186
  - spec/helper.rb
115
187
  - spec/lib/resthome_spec.rb
116
188
  - tasks/spec.rake
@@ -127,6 +199,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
127
199
  - - ! '>='
128
200
  - !ruby/object:Gem::Version
129
201
  version: '0'
202
+ segments:
203
+ - 0
204
+ hash: 3046830809858145187
130
205
  required_rubygems_version: !ruby/object:Gem::Requirement
131
206
  none: false
132
207
  requirements:
@@ -135,16 +210,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
135
210
  version: '0'
136
211
  requirements: []
137
212
  rubyforge_project:
138
- rubygems_version: 1.8.15
213
+ rubygems_version: 1.8.23
139
214
  signing_key:
140
215
  specification_version: 3
141
216
  summary: RESTful web services consumer
142
- test_files:
143
- - examples/amazon_product_web_service.rb
144
- - examples/amazon_ses_service.rb
145
- - examples/chargify_web_service.rb
146
- - examples/last_fm_web_service.rb
147
- - examples/twilio_web_service.rb
148
- - examples/wordpress_web_service.rb
149
- - spec/helper.rb
150
- - spec/lib/resthome_spec.rb
217
+ test_files: []
data/resthome.gemspec DELETED
@@ -1,86 +0,0 @@
1
- # Generated by jeweler
2
- # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
- # -*- encoding: utf-8 -*-
5
-
6
- Gem::Specification.new do |s|
7
- s.name = %q{sessionm-resthome}
8
- s.version = "0.8.1"
9
-
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Doug Youch"]
12
- s.date = %q{2011-03-09}
13
- s.description = %q{Simple wrapper class generator for consuming RESTful web services}
14
- s.email = %q{doug@sessionm.com}
15
- s.extra_rdoc_files = [
16
- "LICENSE.txt",
17
- "README.rdoc"
18
- ]
19
- s.files = [
20
- ".document",
21
- "Gemfile",
22
- "Gemfile.lock",
23
- "LICENSE.txt",
24
- "README.rdoc",
25
- "Rakefile",
26
- "VERSION",
27
- "examples/amazon_product_web_service.rb",
28
- "examples/amazon_ses_service.rb",
29
- "examples/chargify_web_service.rb",
30
- "examples/last_fm_web_service.rb",
31
- "examples/twilio_web_service.rb",
32
- "examples/wordpress_web_service.rb",
33
- "lib/resthome.rb",
34
- "resthome.gemspec",
35
- "spec/helper.rb",
36
- "spec/lib/resthome_spec.rb",
37
- "tasks/spec.rake"
38
- ]
39
- s.homepage = %q{http://github.com/sessionm/resthome}
40
- s.licenses = ["MIT"]
41
- s.require_paths = ["lib"]
42
- s.rubygems_version = %q{1.3.7}
43
- s.summary = %q{RESTful web services consumer}
44
- s.test_files = [
45
- "examples/amazon_product_web_service.rb",
46
- "examples/amazon_ses_service.rb",
47
- "examples/chargify_web_service.rb",
48
- "examples/last_fm_web_service.rb",
49
- "examples/twilio_web_service.rb",
50
- "examples/wordpress_web_service.rb",
51
- "spec/helper.rb",
52
- "spec/lib/resthome_spec.rb"
53
- ]
54
-
55
- if s.respond_to? :specification_version then
56
- current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
57
- s.specification_version = 3
58
-
59
- if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
60
- s.add_runtime_dependency(%q<httparty>, [">= 0"])
61
- s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
62
- s.add_development_dependency(%q<jeweler>, ["~> 1.5.1"])
63
- s.add_development_dependency(%q<rcov>, [">= 0"])
64
- s.add_development_dependency(%q<fakeweb>, [">= 0"])
65
- s.add_development_dependency(%q<json>, [">= 0"])
66
- s.add_development_dependency(%q<rspec>, [">= 0"])
67
- else
68
- s.add_dependency(%q<httparty>, [">= 0"])
69
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
70
- s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
71
- s.add_dependency(%q<rcov>, [">= 0"])
72
- s.add_dependency(%q<fakeweb>, [">= 0"])
73
- s.add_dependency(%q<json>, [">= 0"])
74
- s.add_dependency(%q<rspec>, [">= 0"])
75
- end
76
- else
77
- s.add_dependency(%q<httparty>, [">= 0"])
78
- s.add_dependency(%q<bundler>, ["~> 1.0.0"])
79
- s.add_dependency(%q<jeweler>, ["~> 1.5.1"])
80
- s.add_dependency(%q<rcov>, [">= 0"])
81
- s.add_dependency(%q<fakeweb>, [">= 0"])
82
- s.add_dependency(%q<json>, [">= 0"])
83
- s.add_dependency(%q<rspec>, [">= 0"])
84
- end
85
- end
86
-