primer 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (72) hide show
  1. data/History.txt +17 -0
  2. data/README.rdoc +74 -35
  3. data/example/README.rdoc +33 -23
  4. data/example/application.rb +2 -2
  5. data/example/console.rb +133 -0
  6. data/example/db/blog.sqlite3 +0 -0
  7. data/example/{models → db}/connection.rb +0 -0
  8. data/example/environment.rb +17 -4
  9. data/example/models/comment.rb +5 -0
  10. data/example/models/post.rb +5 -0
  11. data/example/script/setup_database.rb +8 -2
  12. data/example/views/comments.erb +6 -0
  13. data/example/views/layout.erb +1 -1
  14. data/example/views/show.erb +5 -1
  15. data/lib/primer/bus/amqp.rb +7 -5
  16. data/lib/primer/bus/amqp.rbc +1045 -0
  17. data/lib/primer/bus/memory.rbc +344 -0
  18. data/lib/primer/bus.rb +3 -2
  19. data/lib/primer/bus.rbc +872 -0
  20. data/lib/primer/cache/memory.rbc +1443 -0
  21. data/lib/primer/cache/redis.rb +2 -2
  22. data/lib/primer/cache/redis.rbc +1643 -0
  23. data/lib/primer/cache.rb +2 -16
  24. data/lib/primer/cache.rbc +1502 -0
  25. data/lib/primer/enabler.rbc +414 -0
  26. data/lib/primer/helpers.rbc +1438 -0
  27. data/lib/primer/lazyness.rb +63 -0
  28. data/lib/primer/lazyness.rbc +1442 -0
  29. data/lib/primer/real_time.rbc +1999 -0
  30. data/lib/primer/route_set.rb +1 -0
  31. data/lib/primer/route_set.rbc +1475 -0
  32. data/lib/primer/watcher/active_record_macros.rb +13 -3
  33. data/lib/primer/watcher/active_record_macros.rbc +1796 -0
  34. data/lib/primer/watcher/macros.rb +11 -14
  35. data/lib/primer/watcher/macros.rbc +1628 -0
  36. data/lib/primer/watcher.rb +2 -7
  37. data/lib/primer/watcher.rbc +1416 -0
  38. data/lib/primer/worker/active_record_agent.rb +30 -33
  39. data/lib/primer/worker/active_record_agent.rbc +2840 -0
  40. data/lib/primer/worker/changes_agent.rb +20 -0
  41. data/lib/primer/worker/changes_agent.rbc +578 -0
  42. data/lib/primer/worker.rb +20 -3
  43. data/lib/primer/worker.rbc +1254 -0
  44. data/lib/primer.rb +10 -2
  45. data/lib/primer.rbc +944 -0
  46. data/spec/db/test.sqlite3 +0 -0
  47. data/spec/models/artist.rb +3 -2
  48. data/spec/models/artist.rbc +288 -0
  49. data/spec/models/blog_post.rb +3 -1
  50. data/spec/models/blog_post.rbc +181 -0
  51. data/spec/models/calendar.rbc +209 -0
  52. data/spec/models/concert.rbc +211 -0
  53. data/spec/models/performance.rbc +177 -0
  54. data/spec/models/person.rb +1 -0
  55. data/spec/models/person.rbc +306 -0
  56. data/spec/models/watchable.rbc +363 -0
  57. data/spec/primer/bus_spec.rbc +940 -0
  58. data/spec/primer/cache_spec.rb +3 -3
  59. data/spec/primer/cache_spec.rbc +8535 -0
  60. data/spec/primer/helpers/erb_spec.rb +14 -14
  61. data/spec/primer/helpers/erb_spec.rbc +2485 -0
  62. data/spec/primer/lazyness_spec.rb +61 -0
  63. data/spec/primer/lazyness_spec.rbc +1408 -0
  64. data/spec/primer/watcher/active_record_spec.rb +15 -15
  65. data/spec/primer/watcher/active_record_spec.rbc +5202 -0
  66. data/spec/primer/watcher_spec.rbc +2645 -0
  67. data/spec/schema.rbc +775 -0
  68. data/spec/spec_helper.rb +3 -0
  69. data/spec/spec_helper.rbc +1193 -0
  70. data/spec/templates/page.erb +0 -1
  71. metadata +77 -70
  72. data/example/models/blog_post.rb +0 -4
@@ -0,0 +1,211 @@
1
+ !RBIX
2
+ 10310238139619683799
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 33
13
+ 99
14
+ 7
15
+ 0
16
+ 45
17
+ 1
18
+ 2
19
+ 43
20
+ 3
21
+ 65
22
+ 49
23
+ 4
24
+ 3
25
+ 13
26
+ 99
27
+ 12
28
+ 7
29
+ 5
30
+ 12
31
+ 7
32
+ 6
33
+ 12
34
+ 65
35
+ 12
36
+ 49
37
+ 7
38
+ 4
39
+ 15
40
+ 49
41
+ 5
42
+ 0
43
+ 15
44
+ 2
45
+ 11
46
+ I
47
+ 6
48
+ I
49
+ 0
50
+ I
51
+ 0
52
+ I
53
+ 0
54
+ n
55
+ p
56
+ 8
57
+ x
58
+ 7
59
+ Concert
60
+ x
61
+ 12
62
+ ActiveRecord
63
+ n
64
+ x
65
+ 4
66
+ Base
67
+ x
68
+ 10
69
+ open_class
70
+ x
71
+ 14
72
+ __class_init__
73
+ M
74
+ 1
75
+ n
76
+ n
77
+ x
78
+ 7
79
+ Concert
80
+ i
81
+ 45
82
+ 5
83
+ 66
84
+ 5
85
+ 7
86
+ 0
87
+ 47
88
+ 49
89
+ 1
90
+ 1
91
+ 15
92
+ 5
93
+ 7
94
+ 2
95
+ 44
96
+ 43
97
+ 3
98
+ 79
99
+ 49
100
+ 4
101
+ 1
102
+ 13
103
+ 7
104
+ 5
105
+ 7
106
+ 6
107
+ 49
108
+ 7
109
+ 2
110
+ 15
111
+ 47
112
+ 49
113
+ 8
114
+ 2
115
+ 15
116
+ 5
117
+ 45
118
+ 9
119
+ 10
120
+ 43
121
+ 11
122
+ 47
123
+ 49
124
+ 12
125
+ 1
126
+ 11
127
+ I
128
+ 6
129
+ I
130
+ 0
131
+ I
132
+ 0
133
+ I
134
+ 0
135
+ n
136
+ p
137
+ 13
138
+ x
139
+ 8
140
+ calendar
141
+ x
142
+ 10
143
+ belongs_to
144
+ x
145
+ 12
146
+ performances
147
+ x
148
+ 4
149
+ Hash
150
+ x
151
+ 16
152
+ new_from_literal
153
+ x
154
+ 9
155
+ dependent
156
+ x
157
+ 7
158
+ destroy
159
+ x
160
+ 3
161
+ []=
162
+ x
163
+ 8
164
+ has_many
165
+ x
166
+ 6
167
+ Primer
168
+ n
169
+ x
170
+ 7
171
+ Watcher
172
+ x
173
+ 7
174
+ include
175
+ p
176
+ 7
177
+ I
178
+ 2
179
+ I
180
+ 2
181
+ I
182
+ a
183
+ I
184
+ 3
185
+ I
186
+ 22
187
+ I
188
+ 4
189
+ I
190
+ 2d
191
+ x
192
+ 53
193
+ /Users/jcoglan/projects/primer/spec/models/concert.rb
194
+ p
195
+ 0
196
+ x
197
+ 13
198
+ attach_method
199
+ p
200
+ 3
201
+ I
202
+ 0
203
+ I
204
+ 1
205
+ I
206
+ 21
207
+ x
208
+ 53
209
+ /Users/jcoglan/projects/primer/spec/models/concert.rb
210
+ p
211
+ 0
@@ -0,0 +1,177 @@
1
+ !RBIX
2
+ 10310238139619683799
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 33
13
+ 99
14
+ 7
15
+ 0
16
+ 45
17
+ 1
18
+ 2
19
+ 43
20
+ 3
21
+ 65
22
+ 49
23
+ 4
24
+ 3
25
+ 13
26
+ 99
27
+ 12
28
+ 7
29
+ 5
30
+ 12
31
+ 7
32
+ 6
33
+ 12
34
+ 65
35
+ 12
36
+ 49
37
+ 7
38
+ 4
39
+ 15
40
+ 49
41
+ 5
42
+ 0
43
+ 15
44
+ 2
45
+ 11
46
+ I
47
+ 6
48
+ I
49
+ 0
50
+ I
51
+ 0
52
+ I
53
+ 0
54
+ n
55
+ p
56
+ 8
57
+ x
58
+ 11
59
+ Performance
60
+ x
61
+ 12
62
+ ActiveRecord
63
+ n
64
+ x
65
+ 4
66
+ Base
67
+ x
68
+ 10
69
+ open_class
70
+ x
71
+ 14
72
+ __class_init__
73
+ M
74
+ 1
75
+ n
76
+ n
77
+ x
78
+ 11
79
+ Performance
80
+ i
81
+ 29
82
+ 5
83
+ 66
84
+ 5
85
+ 7
86
+ 0
87
+ 47
88
+ 49
89
+ 1
90
+ 1
91
+ 15
92
+ 5
93
+ 7
94
+ 2
95
+ 47
96
+ 49
97
+ 1
98
+ 1
99
+ 15
100
+ 5
101
+ 45
102
+ 3
103
+ 4
104
+ 43
105
+ 5
106
+ 47
107
+ 49
108
+ 6
109
+ 1
110
+ 11
111
+ I
112
+ 2
113
+ I
114
+ 0
115
+ I
116
+ 0
117
+ I
118
+ 0
119
+ n
120
+ p
121
+ 7
122
+ x
123
+ 6
124
+ artist
125
+ x
126
+ 10
127
+ belongs_to
128
+ x
129
+ 7
130
+ concert
131
+ x
132
+ 6
133
+ Primer
134
+ n
135
+ x
136
+ 7
137
+ Watcher
138
+ x
139
+ 7
140
+ include
141
+ p
142
+ 7
143
+ I
144
+ 2
145
+ I
146
+ 2
147
+ I
148
+ a
149
+ I
150
+ 3
151
+ I
152
+ 12
153
+ I
154
+ 4
155
+ I
156
+ 1d
157
+ x
158
+ 57
159
+ /Users/jcoglan/projects/primer/spec/models/performance.rb
160
+ p
161
+ 0
162
+ x
163
+ 13
164
+ attach_method
165
+ p
166
+ 3
167
+ I
168
+ 0
169
+ I
170
+ 1
171
+ I
172
+ 21
173
+ x
174
+ 57
175
+ /Users/jcoglan/projects/primer/spec/models/performance.rb
176
+ p
177
+ 0
@@ -2,6 +2,7 @@ class Person < ActiveRecord::Base
2
2
  has_many :blog_posts
3
3
 
4
4
  include Primer::Watcher
5
+ include Primer::Lazyness
5
6
 
6
7
  def all_attributes
7
8
  [id, the_name]
@@ -0,0 +1,306 @@
1
+ !RBIX
2
+ 10310238139619683799
3
+ x
4
+ M
5
+ 1
6
+ n
7
+ n
8
+ x
9
+ 10
10
+ __script__
11
+ i
12
+ 33
13
+ 99
14
+ 7
15
+ 0
16
+ 45
17
+ 1
18
+ 2
19
+ 43
20
+ 3
21
+ 65
22
+ 49
23
+ 4
24
+ 3
25
+ 13
26
+ 99
27
+ 12
28
+ 7
29
+ 5
30
+ 12
31
+ 7
32
+ 6
33
+ 12
34
+ 65
35
+ 12
36
+ 49
37
+ 7
38
+ 4
39
+ 15
40
+ 49
41
+ 5
42
+ 0
43
+ 15
44
+ 2
45
+ 11
46
+ I
47
+ 6
48
+ I
49
+ 0
50
+ I
51
+ 0
52
+ I
53
+ 0
54
+ n
55
+ p
56
+ 8
57
+ x
58
+ 6
59
+ Person
60
+ x
61
+ 12
62
+ ActiveRecord
63
+ n
64
+ x
65
+ 4
66
+ Base
67
+ x
68
+ 10
69
+ open_class
70
+ x
71
+ 14
72
+ __class_init__
73
+ M
74
+ 1
75
+ n
76
+ n
77
+ x
78
+ 6
79
+ Person
80
+ i
81
+ 49
82
+ 5
83
+ 66
84
+ 5
85
+ 7
86
+ 0
87
+ 47
88
+ 49
89
+ 1
90
+ 1
91
+ 15
92
+ 5
93
+ 45
94
+ 2
95
+ 3
96
+ 43
97
+ 4
98
+ 47
99
+ 49
100
+ 5
101
+ 1
102
+ 15
103
+ 99
104
+ 7
105
+ 6
106
+ 7
107
+ 7
108
+ 65
109
+ 67
110
+ 49
111
+ 8
112
+ 0
113
+ 49
114
+ 9
115
+ 4
116
+ 15
117
+ 99
118
+ 7
119
+ 10
120
+ 7
121
+ 11
122
+ 65
123
+ 67
124
+ 49
125
+ 8
126
+ 0
127
+ 49
128
+ 9
129
+ 4
130
+ 11
131
+ I
132
+ 5
133
+ I
134
+ 0
135
+ I
136
+ 0
137
+ I
138
+ 0
139
+ n
140
+ p
141
+ 12
142
+ x
143
+ 10
144
+ blog_posts
145
+ x
146
+ 8
147
+ has_many
148
+ x
149
+ 6
150
+ Primer
151
+ n
152
+ x
153
+ 7
154
+ Watcher
155
+ x
156
+ 7
157
+ include
158
+ x
159
+ 14
160
+ all_attributes
161
+ M
162
+ 1
163
+ n
164
+ n
165
+ x
166
+ 14
167
+ all_attributes
168
+ i
169
+ 9
170
+ 5
171
+ 48
172
+ 0
173
+ 5
174
+ 48
175
+ 1
176
+ 35
177
+ 2
178
+ 11
179
+ I
180
+ 2
181
+ I
182
+ 0
183
+ I
184
+ 0
185
+ I
186
+ 0
187
+ n
188
+ p
189
+ 2
190
+ x
191
+ 2
192
+ id
193
+ x
194
+ 8
195
+ the_name
196
+ p
197
+ 5
198
+ I
199
+ -1
200
+ I
201
+ 7
202
+ I
203
+ 0
204
+ I
205
+ 8
206
+ I
207
+ 9
208
+ x
209
+ 52
210
+ /Users/jcoglan/projects/primer/spec/models/person.rb
211
+ p
212
+ 0
213
+ x
214
+ 17
215
+ method_visibility
216
+ x
217
+ 15
218
+ add_defn_method
219
+ x
220
+ 8
221
+ the_name
222
+ M
223
+ 1
224
+ n
225
+ n
226
+ x
227
+ 8
228
+ the_name
229
+ i
230
+ 4
231
+ 5
232
+ 48
233
+ 0
234
+ 11
235
+ I
236
+ 1
237
+ I
238
+ 0
239
+ I
240
+ 0
241
+ I
242
+ 0
243
+ n
244
+ p
245
+ 1
246
+ x
247
+ 4
248
+ name
249
+ p
250
+ 5
251
+ I
252
+ -1
253
+ I
254
+ b
255
+ I
256
+ 0
257
+ I
258
+ c
259
+ I
260
+ 4
261
+ x
262
+ 52
263
+ /Users/jcoglan/projects/primer/spec/models/person.rb
264
+ p
265
+ 0
266
+ p
267
+ 9
268
+ I
269
+ 2
270
+ I
271
+ 2
272
+ I
273
+ a
274
+ I
275
+ 4
276
+ I
277
+ 15
278
+ I
279
+ 7
280
+ I
281
+ 23
282
+ I
283
+ b
284
+ I
285
+ 31
286
+ x
287
+ 52
288
+ /Users/jcoglan/projects/primer/spec/models/person.rb
289
+ p
290
+ 0
291
+ x
292
+ 13
293
+ attach_method
294
+ p
295
+ 3
296
+ I
297
+ 0
298
+ I
299
+ 1
300
+ I
301
+ 21
302
+ x
303
+ 52
304
+ /Users/jcoglan/projects/primer/spec/models/person.rb
305
+ p
306
+ 0