Sha256: 12e2409f49132b5cca8ac0798df74cb49d3ea6e3c9e66e4f5bdca37d70dd47a4
Contents?: true
Size: 1.01 KB
Versions: 3
Compression:
Stored size: 1.01 KB
Contents
module Mnemosyne class Sweeper include Helper def initialize(port, config, status, logger) @status = status @config = config @logger = logger end def run if @config.empty? puts "Please specify a valid mneme configuration file (ex: -c config.rb)" EM.stop exit end sweeper = Proc.new do Fiber.new do current = epoch_name(@config['namespace'], 0, @config['length']) @logger.info "Sweeping old filters, current epoch: #{current}" conn = Redis.new @config['periods'].times do |n| name = epoch_name(@config['namespace'], n + @config['periods'], @config['length']) conn.del(name) @logger.info "Removed: #{name}" end conn.client.disconnect end.resume end sweeper.call EM.add_periodic_timer(@config['length']) { sweeper.call } @logger.info "Started Mnemosyne::Sweeper with #{@config['length']}s interval" end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
mneme-0.6.0 | lib/mneme/sweeper.rb |
mneme-0.5.2 | lib/mneme/sweeper.rb |
mneme-0.5.1 | lib/mneme/sweeper.rb |