redis_object 1.2.2 → 1.2.3

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.
checksums.yaml CHANGED
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- OGRkODFlNTE1NmI1NDI0Njc0MjQxMzlmNTFiOTA0MGViZWMzYWNjMQ==
4
+ YzUwMjBmYTE3ZDljZGMxMmE4MzBlNmQ5ZDQxNmUxNTAyMDU0ZGEzZA==
5
5
  data.tar.gz: !binary |-
6
- MDdhZDJiZmZkYWZjNzg2ZmIxOGY0NDFjNjRkY2RkOTIzMDZhYTQwOA==
6
+ ZjRkOTMzMzI0ZGMwOWY1NDY0ZWUzMjg4ODhjZjc5NjVlYWRjNjY5Mw==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- YzE0YWQxNjYxNjM4YjExNTAwNjZiMzM5OTliNzkyYTljYTRjYjAzMTMyOTg3
10
- M2JkOTBlMThhZGVjNDM5ZjA5NjFmMWY1NTkzMDAyNTkxMzFhYzJmNjhhNGJk
11
- YTk3Yjk1YzY0MzRiMWRmOTQ5ZDdjMGVmMThkNmMwMmI1Nzk5NzE=
9
+ Yjk2NWJhOGNlZTQ3ZWVkYzAzMTJkNDZmMTA0NDA1ZDNmN2Y3MmJkMGNjMWIw
10
+ MzMzZmU1NTc1MmZkMTkzYTdlMDgzZjNkMGVlOGNhMzZiOWY4YjQ2YTVlNjVj
11
+ YjAxOTNkMGY0NTgwZWE2MWZkNDk5Yzk4NTcxMzA1ZjUzM2Y2NWM=
12
12
  data.tar.gz: !binary |-
13
- YzRhNjY2MjEzYzQ3MjY5OTAxYzcxYjU1MzA5ZmQ4ZGVkNTRlMGU0ZTgxOWIy
14
- ZGY5NWNlZTQxNGJhYzFlZTkwYmE2ZTU0MGExYWU4ZDFjODdmYjI1ZGVjYzYx
15
- YzU1NzdhYTI2NzA1MDNkNTZkYTIzMDFiMGU5YTQ2ODc0ZDRhZTE=
13
+ NWYyMmYxNzk2ZGJiYTQxOTYxYTM3NmNkOTg2MzY2NDJhNDFlOTUxNzQwZWMy
14
+ YmU3MTMyZDA4M2Y2N2QxMmI3OGQ3OWRhYjIyNDA2OTIzYTMxMjhlMWFhNWFm
15
+ MzNhOGRhMWRjN2MxMzQ4YWE1ODRlZTVkNTRhOGE2YmQ1ZDA4YWE=
data/Gemfile CHANGED
@@ -1,8 +1,10 @@
1
1
  source "http://rubygems.org"
2
2
 
3
- gem 'rake'
4
- gem 'rspec'
5
- gem 'coveralls', require: false
3
+ group :test do
4
+ gem 'rake'
5
+ gem 'rspec'
6
+ gem 'coveralls', require: false
7
+ end
6
8
 
7
9
  # Specify your gem's dependencies in redis_object.gemspec
8
10
  gemspec
data/lib/redis_object.rb CHANGED
@@ -33,12 +33,12 @@ module Seabright
33
33
  include Seabright::Types
34
34
  include Seabright::DefaultValues
35
35
  include Seabright::Collections
36
+ include Seabright::Triggers
36
37
  include Seabright::Indices
37
38
  include Seabright::Views
38
39
  include Seabright::ViewCaching
39
40
  include Seabright::Timestamps
40
41
  include Seabright::History
41
- include Seabright::Triggers
42
42
  include Seabright::Benchmark
43
43
 
44
44
  end
@@ -177,10 +177,10 @@ module Seabright
177
177
  super if sym == :class
178
178
  if sym.to_s =~ SetPattern
179
179
  return super if args.size > 1
180
- set(sym.to_s.gsub(SetPattern,'').to_sym,*args)
180
+ send(:set,sym.to_s.gsub(SetPattern,'').to_sym,*args)
181
181
  else
182
182
  return super if !args.empty?
183
- get(sym)
183
+ send(:get,sym)
184
184
  end
185
185
  end
186
186
 
@@ -34,8 +34,6 @@ module Seabright
34
34
 
35
35
  def cache_view(name,opts=true)
36
36
  cached_views[name.to_sym] = opts
37
- intercept_views_for_caching!
38
- set_up_invalidation!
39
37
  end
40
38
  alias_method :cache_named_view, :cache_view
41
39
 
@@ -175,7 +173,27 @@ module Seabright
175
173
  end
176
174
  end
177
175
 
178
- trigger_on_update :invalidated_by_update!
176
+ def invalidated_by(obj,chain)
177
+ invalidate_cached_views!
178
+ end
179
+
180
+ def invalidated_set(cmd,k,v)
181
+ ret = send("uninvalidated_#{cmd}".to_sym,k,v)
182
+ invalidated_by_update!
183
+ ret
184
+ end
185
+
186
+ alias_method :uninvalidated_set, :set unless method_defined?(:uninvalidated_set)
187
+ def set(k,v)
188
+ invalidated_set(:set,k,v)
189
+ end
190
+
191
+ alias_method :uninvalidated_setnx, :setnx unless method_defined?(:uninvalidated_setnx)
192
+ def setnx(k,v)
193
+ invalidated_set(:setnx,k,v)
194
+ end
195
+
196
+ # trigger_on_update :invalidated_by_update!
179
197
  trigger_on_reference :invalidated_by_reference!
180
198
 
181
199
  end
@@ -202,7 +220,6 @@ module Seabright
202
220
 
203
221
  def invalidate_upstream(*args)
204
222
  @upstream_invalidations = (@upstream_invalidations || []) + args
205
- set_up_invalidation!
206
223
  end
207
224
 
208
225
  def upstream_invalidations
@@ -219,7 +236,6 @@ module Seabright
219
236
 
220
237
  def invalidate_downstream(*args)
221
238
  @downstream_invalidations = (@downstream_invalidations || []) + args
222
- set_up_invalidation!
223
239
  end
224
240
 
225
241
  def downstream_invalidations
@@ -252,6 +268,8 @@ module Seabright
252
268
 
253
269
  def self.included(base)
254
270
  base.extend(ClassMethods)
271
+ base.intercept_views_for_caching!
272
+ base.set_up_invalidation!
255
273
  end
256
274
 
257
275
  end
@@ -1,5 +1,5 @@
1
1
  module Seabright
2
2
  class RedisObject
3
- VERSION = "1.2.2"
3
+ VERSION = "1.2.3"
4
4
  end
5
5
  end
@@ -26,9 +26,9 @@ module ScriptCacheSpec
26
26
  GenericObject.recently_created.first.id.should eq("5")
27
27
  GenericObject.indexed(:created_at,-1,false).to_a.last.id.should eq("4")
28
28
 
29
- $ScriptSHAMap.keys.count.should eq(1)
29
+ cnt = $ScriptSHAMap.keys.count
30
30
  RedisObject.untrack_script :RevScript
31
- $ScriptSHAMap.keys.count.should eq(0)
31
+ $ScriptSHAMap.keys.count.should eq(cnt-1)
32
32
 
33
33
  end
34
34
 
@@ -34,7 +34,7 @@ module ViewCachingSpec
34
34
 
35
35
  class Container < RedisObject
36
36
 
37
- invalidate_downstream :TypedObject
37
+ invalidate_downstream :typed_objects
38
38
 
39
39
  end
40
40
 
@@ -96,9 +96,9 @@ module ViewCachingSpec
96
96
  @obj.view_is_cached?(:aggregated).should eq(true)
97
97
 
98
98
  @obj.set(:demolisher, "smash")
99
- #
100
- # @obj.view_is_cached?(:aggregated).should eq(false)
99
+ sleep 1
101
100
 
101
+ @obj.view_is_cached?(:aggregated).should eq(false)
102
102
 
103
103
  end
104
104
 
@@ -109,20 +109,18 @@ module ViewCachingSpec
109
109
  @obj.view_is_cached?(:aggregated).should eq(true)
110
110
 
111
111
  @baby.set(:demolisher, "smash")
112
+ sleep 1
112
113
 
113
- # sleep 1
114
- #
115
- # TypedObject.find(@obj.id).view_is_cached?(:aggregated).should eq(false)
114
+ TypedObject.find(@obj.id).view_is_cached?(:aggregated).should eq(false)
116
115
 
117
116
  @obj.view_as_hash(:aggregated).should be_a(Hash)
118
117
 
119
118
  @obj.view_is_cached?(:aggregated).should eq(true)
120
119
 
121
120
  @dad.set(:demolisher, "smash")
121
+ sleep 1
122
122
 
123
- # sleep 1
124
- #
125
- # TypedObject.find(@obj.id).view_is_cached?(:aggregated).should eq(false)
123
+ TypedObject.find(@obj.id).view_is_cached?(:aggregated).should eq(false)
126
124
 
127
125
  end
128
126
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redis_object
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.2
4
+ version: 1.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Bragg