class Taskinator::Persistence::RedisCleanupVisitor
Attributes
expire_in[R]
instance[R]
Public Class Methods
new(conn, instance, expire_in)
click to toggle source
# File lib/taskinator/persistence.rb, line 589 def initialize(conn, instance, expire_in) @conn = conn @instance = instance @expire_in = expire_in.to_i @key = instance.key end
Public Instance Methods
visit()
click to toggle source
# File lib/taskinator/persistence.rb, line 596 def visit @instance.accept(self) @conn.expire(@key, expire_in) end
visit_process(attribute)
click to toggle source
# File lib/taskinator/persistence.rb, line 601 def visit_process(attribute) process = @instance.send(attribute) RedisCleanupVisitor.new(@conn, process, expire_in).visit if process end
visit_tasks(tasks)
click to toggle source
# File lib/taskinator/persistence.rb, line 606 def visit_tasks(tasks) @conn.expire "#{@key}:tasks", expire_in @conn.expire "#{@key}.count", expire_in @conn.expire "#{@key}.pending", expire_in tasks.each do |task| RedisCleanupVisitor.new(@conn, task, expire_in).visit end end