Module: Seabright::History

Defined in:
lib/redis_object/experimental/history_untested.rb

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



44
45
46
# File 'lib/redis_object/experimental/history_untested.rb', line 44

def self.included(base)
	base.extend(ClassMethods)
end

Instance Method Details

#history(num = 5, reverse = false) ⇒ Object



12
13
14
15
16
17
# File 'lib/redis_object/experimental/history_untested.rb', line 12

def history(num=5,reverse=false)
	parser = Yajl::Parser
	store.send(reverse ? :zrevrange : :zrange, history_key, 0, num).collect do |member|
		parser.parse(member)
	end
end

#history_key(ident = nil) ⇒ Object



19
20
21
# File 'lib/redis_object/experimental/history_untested.rb', line 19

def history_key(ident = nil)
	"#{key}_history"
end

#saveObject



23
24
25
26
# File 'lib/redis_object/experimental/history_untested.rb', line 23

def save
	super
	store_image if save_history?
end

#save_history?Boolean

Returns:

  • (Boolean)


4
5
6
# File 'lib/redis_object/experimental/history_untested.rb', line 4

def save_history?
	save_history || self.class.save_history?
end

#store_imageObject



8
9
10
# File 'lib/redis_object/experimental/history_untested.rb', line 8

def store_image
	store.zadd history_key, Time.now.to_i, to_json
end