moogle 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (68) hide show
  1. data/.document +5 -0
  2. data/.rspec +1 -0
  3. data/Gemfile +35 -0
  4. data/Gemfile.lock +148 -0
  5. data/LICENSE.txt +202 -0
  6. data/NOTICE.txt +4 -0
  7. data/README.md +33 -0
  8. data/Rakefile +44 -0
  9. data/fixtures/vcr_cassettes/push_blog_entry.yml +48 -0
  10. data/fixtures/vcr_cassettes/push_webhook_ping.yml +41 -0
  11. data/lib/moogle/commands/create_link.rb +45 -0
  12. data/lib/moogle/commands/create_target.rb +46 -0
  13. data/lib/moogle/commands/destroy_link.rb +37 -0
  14. data/lib/moogle/commands/destroy_target.rb +37 -0
  15. data/lib/moogle/commands/find_targets.rb +31 -0
  16. data/lib/moogle/commands/push_blog_entry.rb +54 -0
  17. data/lib/moogle/commands/push_email.rb +60 -0
  18. data/lib/moogle/commands/push_webhook_ping.rb +58 -0
  19. data/lib/moogle/commands/update_target.rb +44 -0
  20. data/lib/moogle/commands.rb +9 -0
  21. data/lib/moogle/error.rb +6 -0
  22. data/lib/moogle/events/blog_entry_pushed.rb +34 -0
  23. data/lib/moogle/events/email_pushed.rb +36 -0
  24. data/lib/moogle/events/error.rb +24 -0
  25. data/lib/moogle/events/link_created.rb +21 -0
  26. data/lib/moogle/events/link_destroyed.rb +21 -0
  27. data/lib/moogle/events/target_created.rb +21 -0
  28. data/lib/moogle/events/target_destroyed.rb +21 -0
  29. data/lib/moogle/events/target_updated.rb +21 -0
  30. data/lib/moogle/events/webhook_ping_pushed.rb +34 -0
  31. data/lib/moogle/handlers/accept_notification.rb +96 -0
  32. data/lib/moogle/messages/notification.rb +34 -0
  33. data/lib/moogle/models/blog_target.rb +29 -0
  34. data/lib/moogle/models/email_target.rb +16 -0
  35. data/lib/moogle/models/facebook_target.rb +14 -0
  36. data/lib/moogle/models/link.rb +20 -0
  37. data/lib/moogle/models/post_log.rb +21 -0
  38. data/lib/moogle/models/target.rb +22 -0
  39. data/lib/moogle/models/twitter_target.rb +14 -0
  40. data/lib/moogle/models/webhook_target.rb +18 -0
  41. data/lib/moogle/models.rb +9 -0
  42. data/lib/moogle/representers/link_representer.rb +23 -0
  43. data/lib/moogle/representers/target_representer.rb +34 -0
  44. data/lib/moogle/requests/create_link.rb +24 -0
  45. data/lib/moogle/requests/create_target.rb +40 -0
  46. data/lib/moogle/requests/destroy_link.rb +22 -0
  47. data/lib/moogle/requests/destroy_target.rb +22 -0
  48. data/lib/moogle/requests/find_targets.rb +21 -0
  49. data/lib/moogle/requests/push_blog_entry.rb +67 -0
  50. data/lib/moogle/requests/push_email.rb +46 -0
  51. data/lib/moogle/requests/push_webhook_ping.rb +49 -0
  52. data/lib/moogle/requests/update_target.rb +22 -0
  53. data/lib/moogle/requests.rb +6 -0
  54. data/lib/moogle/version.rb +11 -0
  55. data/lib/moogle.rb +5 -0
  56. data/moogle.gemspec +160 -0
  57. data/spec/commands/find_targets_spec.rb +32 -0
  58. data/spec/commands/links_spec.rb +92 -0
  59. data/spec/commands/push_blog_entry_spec.rb +33 -0
  60. data/spec/commands/push_email_spec.rb +44 -0
  61. data/spec/commands/push_webhook_ping_spec.rb +30 -0
  62. data/spec/commands/targets_spec.rb +165 -0
  63. data/spec/handlers/accept_notification_spec.rb +55 -0
  64. data/spec/moogle_spec.rb +1 -0
  65. data/spec/spec_helper.rb +12 -0
  66. data/spec/support/dependencies.rb +10 -0
  67. data/spec/support/vcr.rb +6 -0
  68. metadata +326 -0
metadata ADDED
@@ -0,0 +1,326 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: moogle
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Benjamin Yu
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-05-02 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: addressable
16
+ requirement: &70213404459380 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 2.2.7
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70213404459380
25
+ - !ruby/object:Gem::Dependency
26
+ name: aequitas
27
+ requirement: &70213404472000 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: 0.0.2
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *70213404472000
36
+ - !ruby/object:Gem::Dependency
37
+ name: data_mapper
38
+ requirement: &70213404467800 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: 1.2.0
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: *70213404467800
47
+ - !ruby/object:Gem::Dependency
48
+ name: mail
49
+ requirement: &70213404464900 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: 2.4.3
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: *70213404464900
58
+ - !ruby/object:Gem::Dependency
59
+ name: faraday
60
+ requirement: &70213404475620 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: 0.7.6
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: *70213404475620
69
+ - !ruby/object:Gem::Dependency
70
+ name: rafaday
71
+ requirement: &70213404515960 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
75
+ - !ruby/object:Gem::Version
76
+ version: 0.1.0
77
+ type: :runtime
78
+ prerelease: false
79
+ version_requirements: *70213404515960
80
+ - !ruby/object:Gem::Dependency
81
+ name: roar
82
+ requirement: &70213404512000 !ruby/object:Gem::Requirement
83
+ none: false
84
+ requirements:
85
+ - - ! '>='
86
+ - !ruby/object:Gem::Version
87
+ version: 0.9.2
88
+ type: :runtime
89
+ prerelease: false
90
+ version_requirements: *70213404512000
91
+ - !ruby/object:Gem::Dependency
92
+ name: serf
93
+ requirement: &70213404546960 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: 0.8.0
99
+ type: :runtime
100
+ prerelease: false
101
+ version_requirements: *70213404546960
102
+ - !ruby/object:Gem::Dependency
103
+ name: uuidtools
104
+ requirement: &70213404542140 !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ! '>='
108
+ - !ruby/object:Gem::Version
109
+ version: 2.1.2
110
+ type: :runtime
111
+ prerelease: false
112
+ version_requirements: *70213404542140
113
+ - !ruby/object:Gem::Dependency
114
+ name: virtus
115
+ requirement: &70213404589820 !ruby/object:Gem::Requirement
116
+ none: false
117
+ requirements:
118
+ - - ! '>='
119
+ - !ruby/object:Gem::Version
120
+ version: 0.3.0
121
+ type: :runtime
122
+ prerelease: false
123
+ version_requirements: *70213404589820
124
+ - !ruby/object:Gem::Dependency
125
+ name: rspec
126
+ requirement: &70213404585680 !ruby/object:Gem::Requirement
127
+ none: false
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ version: 2.8.0
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: *70213404585680
135
+ - !ruby/object:Gem::Dependency
136
+ name: yard
137
+ requirement: &70213404600380 !ruby/object:Gem::Requirement
138
+ none: false
139
+ requirements:
140
+ - - ~>
141
+ - !ruby/object:Gem::Version
142
+ version: 0.7.5
143
+ type: :development
144
+ prerelease: false
145
+ version_requirements: *70213404600380
146
+ - !ruby/object:Gem::Dependency
147
+ name: bundler
148
+ requirement: &70213404599420 !ruby/object:Gem::Requirement
149
+ none: false
150
+ requirements:
151
+ - - ~>
152
+ - !ruby/object:Gem::Version
153
+ version: 1.1.3
154
+ type: :development
155
+ prerelease: false
156
+ version_requirements: *70213404599420
157
+ - !ruby/object:Gem::Dependency
158
+ name: jeweler
159
+ requirement: &70213404598060 !ruby/object:Gem::Requirement
160
+ none: false
161
+ requirements:
162
+ - - ~>
163
+ - !ruby/object:Gem::Version
164
+ version: 1.8.3
165
+ type: :development
166
+ prerelease: false
167
+ version_requirements: *70213404598060
168
+ - !ruby/object:Gem::Dependency
169
+ name: simplecov
170
+ requirement: &70213404596860 !ruby/object:Gem::Requirement
171
+ none: false
172
+ requirements:
173
+ - - ! '>='
174
+ - !ruby/object:Gem::Version
175
+ version: '0'
176
+ type: :development
177
+ prerelease: false
178
+ version_requirements: *70213404596860
179
+ - !ruby/object:Gem::Dependency
180
+ name: vcr
181
+ requirement: &70213404595760 !ruby/object:Gem::Requirement
182
+ none: false
183
+ requirements:
184
+ - - ~>
185
+ - !ruby/object:Gem::Version
186
+ version: 2.0.0
187
+ type: :development
188
+ prerelease: false
189
+ version_requirements: *70213404595760
190
+ - !ruby/object:Gem::Dependency
191
+ name: webmock
192
+ requirement: &70213404594520 !ruby/object:Gem::Requirement
193
+ none: false
194
+ requirements:
195
+ - - ~>
196
+ - !ruby/object:Gem::Version
197
+ version: 1.8.1
198
+ type: :development
199
+ prerelease: false
200
+ version_requirements: *70213404594520
201
+ - !ruby/object:Gem::Dependency
202
+ name: dm-sqlite-adapter
203
+ requirement: &70213404608580 !ruby/object:Gem::Requirement
204
+ none: false
205
+ requirements:
206
+ - - ! '>='
207
+ - !ruby/object:Gem::Version
208
+ version: '0'
209
+ type: :development
210
+ prerelease: false
211
+ version_requirements: *70213404608580
212
+ - !ruby/object:Gem::Dependency
213
+ name: dm-mysql-adapter
214
+ requirement: &70213404606900 !ruby/object:Gem::Requirement
215
+ none: false
216
+ requirements:
217
+ - - ! '>='
218
+ - !ruby/object:Gem::Version
219
+ version: '0'
220
+ type: :development
221
+ prerelease: false
222
+ version_requirements: *70213404606900
223
+ description: Notification pushing to 3rd parties
224
+ email: benjaminlyu@gmail.com
225
+ executables: []
226
+ extensions: []
227
+ extra_rdoc_files:
228
+ - LICENSE.txt
229
+ - README.md
230
+ files:
231
+ - .document
232
+ - .rspec
233
+ - Gemfile
234
+ - Gemfile.lock
235
+ - LICENSE.txt
236
+ - NOTICE.txt
237
+ - README.md
238
+ - Rakefile
239
+ - fixtures/vcr_cassettes/push_blog_entry.yml
240
+ - fixtures/vcr_cassettes/push_webhook_ping.yml
241
+ - lib/moogle.rb
242
+ - lib/moogle/commands.rb
243
+ - lib/moogle/commands/create_link.rb
244
+ - lib/moogle/commands/create_target.rb
245
+ - lib/moogle/commands/destroy_link.rb
246
+ - lib/moogle/commands/destroy_target.rb
247
+ - lib/moogle/commands/find_targets.rb
248
+ - lib/moogle/commands/push_blog_entry.rb
249
+ - lib/moogle/commands/push_email.rb
250
+ - lib/moogle/commands/push_webhook_ping.rb
251
+ - lib/moogle/commands/update_target.rb
252
+ - lib/moogle/error.rb
253
+ - lib/moogle/events/blog_entry_pushed.rb
254
+ - lib/moogle/events/email_pushed.rb
255
+ - lib/moogle/events/error.rb
256
+ - lib/moogle/events/link_created.rb
257
+ - lib/moogle/events/link_destroyed.rb
258
+ - lib/moogle/events/target_created.rb
259
+ - lib/moogle/events/target_destroyed.rb
260
+ - lib/moogle/events/target_updated.rb
261
+ - lib/moogle/events/webhook_ping_pushed.rb
262
+ - lib/moogle/handlers/accept_notification.rb
263
+ - lib/moogle/messages/notification.rb
264
+ - lib/moogle/models.rb
265
+ - lib/moogle/models/blog_target.rb
266
+ - lib/moogle/models/email_target.rb
267
+ - lib/moogle/models/facebook_target.rb
268
+ - lib/moogle/models/link.rb
269
+ - lib/moogle/models/post_log.rb
270
+ - lib/moogle/models/target.rb
271
+ - lib/moogle/models/twitter_target.rb
272
+ - lib/moogle/models/webhook_target.rb
273
+ - lib/moogle/representers/link_representer.rb
274
+ - lib/moogle/representers/target_representer.rb
275
+ - lib/moogle/requests.rb
276
+ - lib/moogle/requests/create_link.rb
277
+ - lib/moogle/requests/create_target.rb
278
+ - lib/moogle/requests/destroy_link.rb
279
+ - lib/moogle/requests/destroy_target.rb
280
+ - lib/moogle/requests/find_targets.rb
281
+ - lib/moogle/requests/push_blog_entry.rb
282
+ - lib/moogle/requests/push_email.rb
283
+ - lib/moogle/requests/push_webhook_ping.rb
284
+ - lib/moogle/requests/update_target.rb
285
+ - lib/moogle/version.rb
286
+ - moogle.gemspec
287
+ - spec/commands/find_targets_spec.rb
288
+ - spec/commands/links_spec.rb
289
+ - spec/commands/push_blog_entry_spec.rb
290
+ - spec/commands/push_email_spec.rb
291
+ - spec/commands/push_webhook_ping_spec.rb
292
+ - spec/commands/targets_spec.rb
293
+ - spec/handlers/accept_notification_spec.rb
294
+ - spec/moogle_spec.rb
295
+ - spec/spec_helper.rb
296
+ - spec/support/dependencies.rb
297
+ - spec/support/vcr.rb
298
+ homepage: http://github.com/byu/moogle
299
+ licenses:
300
+ - Apache 2.0
301
+ post_install_message:
302
+ rdoc_options: []
303
+ require_paths:
304
+ - lib
305
+ required_ruby_version: !ruby/object:Gem::Requirement
306
+ none: false
307
+ requirements:
308
+ - - ! '>='
309
+ - !ruby/object:Gem::Version
310
+ version: '0'
311
+ segments:
312
+ - 0
313
+ hash: -341119792465891169
314
+ required_rubygems_version: !ruby/object:Gem::Requirement
315
+ none: false
316
+ requirements:
317
+ - - ! '>='
318
+ - !ruby/object:Gem::Version
319
+ version: '0'
320
+ requirements: []
321
+ rubyforge_project:
322
+ rubygems_version: 1.8.17
323
+ signing_key:
324
+ specification_version: 3
325
+ summary: Notification pushing to 3rd parties
326
+ test_files: []