lib/blendris/list.rb in blendris-0.5 vs lib/blendris/list.rb in blendris-0.6
- old
+ new
@@ -1,17 +1,28 @@
module Blendris
# RedisList is a wrapper for the Redis LIST data type.
- class RedisList
+ class RedisList < RedisNode
- include RedisNode
include Enumerable
def initialize(key, options = {})
@key = key.to_s
@options = options
@on_change = options[:on_change]
+ end
+
+ def set(*values)
+ # Remove all of the old values.
+ self.clear
+
+ # Add all of the new values.
+ self << values
+
+ self
+ ensure
+ notify_changed
end
def each
redis.lrange(key, 0, -1).each do |value|
yield value