populr 0.1.7 → 0.1.8
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/VERSION +1 -1
- data/lib/populr.rb +3 -3
- data/lib/restful_model.rb +1 -1
- data/lib/restful_model_collection.rb +2 -3
- data/populr.gemspec +2 -2
- metadata +13 -13
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.8
|
data/lib/populr.rb
CHANGED
@@ -27,14 +27,14 @@ class Populr
|
|
27
27
|
attr_reader :api_version
|
28
28
|
|
29
29
|
|
30
|
-
def self.interpret_response(result, options = {})
|
30
|
+
def self.interpret_response(result, result_content, options = {})
|
31
31
|
# Handle HTTP errors and RestClient errors
|
32
32
|
raise ResourceNotFound.new if result.code.to_i == 404
|
33
33
|
raise AccessDenied.new if result.code.to_i == 403
|
34
34
|
|
35
35
|
# Hande content expectation errors
|
36
|
-
raise UnexpectedResponse.new if options[:expected_class] &&
|
37
|
-
json = JSON.parse(
|
36
|
+
raise UnexpectedResponse.new if options[:expected_class] && result_content.empty?
|
37
|
+
json = JSON.parse(result_content)
|
38
38
|
raise APIError.new(json['error_type'], json['error']) if json.is_a?(Hash) && json['error_type']
|
39
39
|
raise UnexpectedResponse.new(result.msg) if result.is_a?(Net::HTTPClientError)
|
40
40
|
raise UnexpectedResponse.new if options[:expected_class] && !json.is_a?(options[:expected_class])
|
data/lib/restful_model.rb
CHANGED
@@ -61,7 +61,7 @@ class RestfulModel
|
|
61
61
|
action_url = @_api.url_for_path(self.path(action))
|
62
62
|
|
63
63
|
RestClient.send(http_method, action_url, data){ |response,request,result|
|
64
|
-
json = Populr.interpret_response(result, {:expected_class => Object})
|
64
|
+
json = Populr.interpret_response(result, response, {:expected_class => Object})
|
65
65
|
inflate(json)
|
66
66
|
}
|
67
67
|
self
|
@@ -89,7 +89,7 @@ class RestfulModelCollection
|
|
89
89
|
url = @_api.url_for_path(self.path(id))
|
90
90
|
|
91
91
|
RestClient.get(url){ |response,request,result|
|
92
|
-
json = Populr.interpret_response(result, {:expected_class => Object})
|
92
|
+
json = Populr.interpret_response(result, response, {:expected_class => Object})
|
93
93
|
if @model_class < RestfulModel
|
94
94
|
model = @model_class.new(self)
|
95
95
|
model.inflate(json)
|
@@ -103,9 +103,8 @@ class RestfulModelCollection
|
|
103
103
|
def get_restful_model_collection(offset = 0, count = 50)
|
104
104
|
url = @_api.url_for_path("#{self.path}?offset=#{offset}&count=#{count}")
|
105
105
|
models = []
|
106
|
-
|
107
106
|
RestClient.get(url){ |response,request,result|
|
108
|
-
items = Populr.interpret_response(result, {:expected_class => Array})
|
107
|
+
items = Populr.interpret_response(result, response, {:expected_class => Array})
|
109
108
|
models = inflate_collection(items)
|
110
109
|
}
|
111
110
|
models
|
data/populr.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "populr"
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.8"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Ben Gotow"]
|
12
|
-
s.date = "2013-05-
|
12
|
+
s.date = "2013-05-23"
|
13
13
|
s.description = "Gem for interacting with the Populr.me API that allows you to create and publish one-page websites, subscribe to web hooks and receive events when those pages are interacted with. Visit http://www.populr.me/ for more information. "
|
14
14
|
s.email = "ben@populr.me"
|
15
15
|
s.extra_rdoc_files = [
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: populr
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-05-
|
12
|
+
date: 2013-05-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rest-client
|
16
|
-
requirement: &
|
16
|
+
requirement: &70278705753780 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '1.6'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70278705753780
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: shoulda
|
27
|
-
requirement: &
|
27
|
+
requirement: &70278705751960 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70278705751960
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rdoc
|
38
|
-
requirement: &
|
38
|
+
requirement: &70278705751020 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '3.12'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70278705751020
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: bundler
|
49
|
-
requirement: &
|
49
|
+
requirement: &70278705764320 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.3.5
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70278705764320
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: jeweler
|
60
|
-
requirement: &
|
60
|
+
requirement: &70278705762640 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: 1.8.4
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70278705762640
|
69
69
|
description: ! 'Gem for interacting with the Populr.me API that allows you to create
|
70
70
|
and publish one-page websites, subscribe to web hooks and receive events when those
|
71
71
|
pages are interacted with. Visit http://www.populr.me/ for more information. '
|
@@ -116,7 +116,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
116
116
|
version: '0'
|
117
117
|
segments:
|
118
118
|
- 0
|
119
|
-
hash: -
|
119
|
+
hash: -2185631134278236433
|
120
120
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
121
121
|
none: false
|
122
122
|
requirements:
|