pinky 0.1.0-java → 0.1.1-java
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/pinky/associations.rb +5 -1
- data/lib/pinky/exceptions.rb +7 -0
- data/lib/pinky/model_fetch_methods.rb +2 -1
- data/pinky.gemspec +3 -2
- metadata +84 -69
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.1
|
data/lib/pinky/associations.rb
CHANGED
@@ -5,7 +5,11 @@ module Pinky
|
|
5
5
|
find_by = opts[:lookup_by] || "#{klass_name}_id"
|
6
6
|
association_name = opts[:as] || klass_name
|
7
7
|
define_method association_name do
|
8
|
-
|
8
|
+
begin
|
9
|
+
klass.find send(find_by)
|
10
|
+
rescue NotFoundException
|
11
|
+
raise unless opts[:allow_nil]
|
12
|
+
end
|
9
13
|
end
|
10
14
|
end
|
11
15
|
end
|
@@ -23,7 +23,8 @@ module Pinky
|
|
23
23
|
raise Exception.new "Error fetching from #{url}#{$/}#{response['errors'].join ','}" unless response['success']
|
24
24
|
response = response['response']
|
25
25
|
response = response.fetch @response_key if @response_key
|
26
|
-
raise
|
26
|
+
raise NotFoundException.new "No model found for natural_key #{natural_key}" if response.empty?
|
27
|
+
raise TooManyFoundException.new "More than one model was returned" if response.size > 1
|
27
28
|
response.first
|
28
29
|
end
|
29
30
|
|
data/pinky.gemspec
CHANGED
@@ -5,12 +5,12 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "pinky"
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.1"
|
9
9
|
s.platform = "java"
|
10
10
|
|
11
11
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
12
|
s.authors = ["Joel Friedman"]
|
13
|
-
s.date = "2012-11-
|
13
|
+
s.date = "2012-11-26"
|
14
14
|
s.description = "Cache your api objects in member easier, with associations."
|
15
15
|
s.email = "asher.friedman@gmail.com"
|
16
16
|
s.extra_rdoc_files = [
|
@@ -31,6 +31,7 @@ Gem::Specification.new do |s|
|
|
31
31
|
"lib/pinky/cachable_model.rb",
|
32
32
|
"lib/pinky/energizer_bunny/connection.rb",
|
33
33
|
"lib/pinky/energizer_bunny/subscription.rb",
|
34
|
+
"lib/pinky/exceptions.rb",
|
34
35
|
"lib/pinky/model.rb",
|
35
36
|
"lib/pinky/model_fetch_methods.rb",
|
36
37
|
"lib/pinky/model_natural_key_methods.rb",
|
metadata
CHANGED
@@ -1,160 +1,172 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pinky
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
4
|
+
prerelease:
|
5
|
+
version: 0.1.1
|
6
6
|
platform: java
|
7
7
|
authors:
|
8
8
|
- Joel Friedman
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-11-
|
12
|
+
date: 2012-11-26 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httparty
|
16
|
-
|
17
|
-
none: false
|
16
|
+
version_requirements: !ruby/object:Gem::Requirement
|
18
17
|
requirements:
|
19
18
|
- - ! '>='
|
20
19
|
- !ruby/object:Gem::Version
|
21
|
-
version:
|
22
|
-
|
23
|
-
prerelease: false
|
24
|
-
version_requirements: !ruby/object:Gem::Requirement
|
20
|
+
version: !binary |-
|
21
|
+
MA==
|
25
22
|
none: false
|
23
|
+
requirement: !ruby/object:Gem::Requirement
|
26
24
|
requirements:
|
27
25
|
- - ! '>='
|
28
26
|
- !ruby/object:Gem::Version
|
29
|
-
version:
|
27
|
+
version: !binary |-
|
28
|
+
MA==
|
29
|
+
none: false
|
30
|
+
prerelease: false
|
31
|
+
type: :runtime
|
30
32
|
- !ruby/object:Gem::Dependency
|
31
33
|
name: json
|
32
|
-
|
33
|
-
none: false
|
34
|
+
version_requirements: !ruby/object:Gem::Requirement
|
34
35
|
requirements:
|
35
36
|
- - ! '>='
|
36
37
|
- !ruby/object:Gem::Version
|
37
|
-
version:
|
38
|
-
|
39
|
-
prerelease: false
|
40
|
-
version_requirements: !ruby/object:Gem::Requirement
|
38
|
+
version: !binary |-
|
39
|
+
MA==
|
41
40
|
none: false
|
41
|
+
requirement: !ruby/object:Gem::Requirement
|
42
42
|
requirements:
|
43
43
|
- - ! '>='
|
44
44
|
- !ruby/object:Gem::Version
|
45
|
-
version:
|
45
|
+
version: !binary |-
|
46
|
+
MA==
|
47
|
+
none: false
|
48
|
+
prerelease: false
|
49
|
+
type: :runtime
|
46
50
|
- !ruby/object:Gem::Dependency
|
47
51
|
name: hot_bunnies
|
48
|
-
|
49
|
-
none: false
|
52
|
+
version_requirements: !ruby/object:Gem::Requirement
|
50
53
|
requirements:
|
51
54
|
- - ! '>='
|
52
55
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
54
|
-
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
56
|
+
version: !binary |-
|
57
|
+
MA==
|
57
58
|
none: false
|
59
|
+
requirement: !ruby/object:Gem::Requirement
|
58
60
|
requirements:
|
59
61
|
- - ! '>='
|
60
62
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
63
|
+
version: !binary |-
|
64
|
+
MA==
|
65
|
+
none: false
|
66
|
+
prerelease: false
|
67
|
+
type: :runtime
|
62
68
|
- !ruby/object:Gem::Dependency
|
63
69
|
name: mailbox
|
64
|
-
|
65
|
-
none: false
|
70
|
+
version_requirements: !ruby/object:Gem::Requirement
|
66
71
|
requirements:
|
67
72
|
- - ! '>='
|
68
73
|
- !ruby/object:Gem::Version
|
69
|
-
version:
|
70
|
-
|
71
|
-
prerelease: false
|
72
|
-
version_requirements: !ruby/object:Gem::Requirement
|
74
|
+
version: !binary |-
|
75
|
+
MA==
|
73
76
|
none: false
|
77
|
+
requirement: !ruby/object:Gem::Requirement
|
74
78
|
requirements:
|
75
79
|
- - ! '>='
|
76
80
|
- !ruby/object:Gem::Version
|
77
|
-
version:
|
81
|
+
version: !binary |-
|
82
|
+
MA==
|
83
|
+
none: false
|
84
|
+
prerelease: false
|
85
|
+
type: :runtime
|
78
86
|
- !ruby/object:Gem::Dependency
|
79
87
|
name: timecop
|
80
|
-
|
81
|
-
none: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
82
89
|
requirements:
|
83
90
|
- - ! '>='
|
84
91
|
- !ruby/object:Gem::Version
|
85
|
-
version:
|
86
|
-
|
87
|
-
prerelease: false
|
88
|
-
version_requirements: !ruby/object:Gem::Requirement
|
92
|
+
version: !binary |-
|
93
|
+
MA==
|
89
94
|
none: false
|
95
|
+
requirement: !ruby/object:Gem::Requirement
|
90
96
|
requirements:
|
91
97
|
- - ! '>='
|
92
98
|
- !ruby/object:Gem::Version
|
93
|
-
version:
|
99
|
+
version: !binary |-
|
100
|
+
MA==
|
101
|
+
none: false
|
102
|
+
prerelease: false
|
103
|
+
type: :development
|
94
104
|
- !ruby/object:Gem::Dependency
|
95
105
|
name: rspec
|
96
|
-
|
97
|
-
none: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
98
107
|
requirements:
|
99
108
|
- - ! '>='
|
100
109
|
- !ruby/object:Gem::Version
|
101
110
|
version: 2.11.0
|
102
|
-
type: :development
|
103
|
-
prerelease: false
|
104
|
-
version_requirements: !ruby/object:Gem::Requirement
|
105
111
|
none: false
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
106
113
|
requirements:
|
107
114
|
- - ! '>='
|
108
115
|
- !ruby/object:Gem::Version
|
109
116
|
version: 2.11.0
|
117
|
+
none: false
|
118
|
+
prerelease: false
|
119
|
+
type: :development
|
110
120
|
- !ruby/object:Gem::Dependency
|
111
121
|
name: rdoc
|
112
|
-
|
113
|
-
none: false
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
114
123
|
requirements:
|
115
124
|
- - ~>
|
116
125
|
- !ruby/object:Gem::Version
|
117
126
|
version: '3.12'
|
118
|
-
type: :development
|
119
|
-
prerelease: false
|
120
|
-
version_requirements: !ruby/object:Gem::Requirement
|
121
127
|
none: false
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
122
129
|
requirements:
|
123
130
|
- - ~>
|
124
131
|
- !ruby/object:Gem::Version
|
125
132
|
version: '3.12'
|
133
|
+
none: false
|
134
|
+
prerelease: false
|
135
|
+
type: :development
|
126
136
|
- !ruby/object:Gem::Dependency
|
127
137
|
name: bundler
|
128
|
-
|
129
|
-
none: false
|
138
|
+
version_requirements: !ruby/object:Gem::Requirement
|
130
139
|
requirements:
|
131
|
-
- - !
|
140
|
+
- - !binary |-
|
141
|
+
Pg==
|
132
142
|
- !ruby/object:Gem::Version
|
133
143
|
version: 1.0.0
|
134
|
-
type: :development
|
135
|
-
prerelease: false
|
136
|
-
version_requirements: !ruby/object:Gem::Requirement
|
137
144
|
none: false
|
145
|
+
requirement: !ruby/object:Gem::Requirement
|
138
146
|
requirements:
|
139
|
-
- - !
|
147
|
+
- - !binary |-
|
148
|
+
Pg==
|
140
149
|
- !ruby/object:Gem::Version
|
141
150
|
version: 1.0.0
|
151
|
+
none: false
|
152
|
+
prerelease: false
|
153
|
+
type: :development
|
142
154
|
- !ruby/object:Gem::Dependency
|
143
155
|
name: jeweler
|
144
|
-
|
145
|
-
none: false
|
156
|
+
version_requirements: !ruby/object:Gem::Requirement
|
146
157
|
requirements:
|
147
158
|
- - ~>
|
148
159
|
- !ruby/object:Gem::Version
|
149
160
|
version: 1.8.4
|
150
|
-
type: :development
|
151
|
-
prerelease: false
|
152
|
-
version_requirements: !ruby/object:Gem::Requirement
|
153
161
|
none: false
|
162
|
+
requirement: !ruby/object:Gem::Requirement
|
154
163
|
requirements:
|
155
164
|
- - ~>
|
156
165
|
- !ruby/object:Gem::Version
|
157
166
|
version: 1.8.4
|
167
|
+
none: false
|
168
|
+
prerelease: false
|
169
|
+
type: :development
|
158
170
|
description: Cache your api objects in member easier, with associations.
|
159
171
|
email: asher.friedman@gmail.com
|
160
172
|
executables: []
|
@@ -176,6 +188,7 @@ files:
|
|
176
188
|
- lib/pinky/cachable_model.rb
|
177
189
|
- lib/pinky/energizer_bunny/connection.rb
|
178
190
|
- lib/pinky/energizer_bunny/subscription.rb
|
191
|
+
- lib/pinky/exceptions.rb
|
179
192
|
- lib/pinky/model.rb
|
180
193
|
- lib/pinky/model_fetch_methods.rb
|
181
194
|
- lib/pinky/model_natural_key_methods.rb
|
@@ -189,29 +202,31 @@ files:
|
|
189
202
|
homepage: http://github.com/trunkclub/pinky
|
190
203
|
licenses:
|
191
204
|
- MIT
|
192
|
-
post_install_message:
|
205
|
+
post_install_message:
|
193
206
|
rdoc_options: []
|
194
207
|
require_paths:
|
195
208
|
- lib
|
196
209
|
required_ruby_version: !ruby/object:Gem::Requirement
|
197
|
-
none: false
|
198
210
|
requirements:
|
199
211
|
- - ! '>='
|
200
212
|
- !ruby/object:Gem::Version
|
201
|
-
version:
|
213
|
+
version: !binary |-
|
214
|
+
MA==
|
202
215
|
segments:
|
203
216
|
- 0
|
204
|
-
hash:
|
205
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
217
|
+
hash: 2
|
206
218
|
none: false
|
219
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
207
220
|
requirements:
|
208
221
|
- - ! '>='
|
209
222
|
- !ruby/object:Gem::Version
|
210
|
-
version:
|
223
|
+
version: !binary |-
|
224
|
+
MA==
|
225
|
+
none: false
|
211
226
|
requirements: []
|
212
|
-
rubyforge_project:
|
227
|
+
rubyforge_project:
|
213
228
|
rubygems_version: 1.8.24
|
214
|
-
signing_key:
|
229
|
+
signing_key:
|
215
230
|
specification_version: 3
|
216
231
|
summary: in memory API caching made easy
|
217
232
|
test_files: []
|