Sha256: 55df7727db53787db4d78b894d3187122922a6c15d90743fb60a813d9dd988f5

Contents?: true

Size: 703 Bytes

Versions: 2

Compression:

Stored size: 703 Bytes

Contents

require 'singleton'

module RailsIdle
  module Collector
    class Base
      include Singleton
      
      def collect
        raise NotImplementedError
      end
      
      def subscribe
        raise NotImplementedError
      end
      
      def push(item, execution_time = 1)
        storage.add(item, execution_time)
      end
      
      def storage
        @starage ||= RailsIdle::Storage::RailsCache.new
      end
      
      protected
      
      def collector_key
        self.class.to_s.demodulize.downcase.to_sym
      end
      
      private
      
      def _collect(path)
        storage.reset(path) if RailsIdle.reset?
        storage.add(path)
      end
      
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rails-idle-0.0.10 lib/rails-idle/collector/base.rb
rails-idle-0.0.9 lib/rails-idle/collector/base.rb