Sha256: cce78c0af52e5a65b0f84490cb43abe78b5b6be8275b405ec07b1c56abf5515a

Contents?: true

Size: 395 Bytes

Versions: 32

Compression:

Stored size: 395 Bytes

Contents

# frozen_string_literal: true

module Karafka
  module Web
    module Tracking
      # Hash that accumulates data that has an expiration date (ttl)
      # Used to keep track of metrics in a window
      class TtlHash < Hash
        # @param ttl [Integer] milliseconds ttl
        def initialize(ttl)
          super() { |k, v| k[v] = TtlArray.new(ttl) }
        end
      end
    end
  end
end

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
karafka-web-0.7.10 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.9 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.8 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.7 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.6 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.5 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.4 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.3 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.2 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.1 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.7.0 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.6.3 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.6.2 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.6.1 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.6.0 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.5.2 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.5.1 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.5.0 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.4.1 lib/karafka/web/tracking/ttl_hash.rb
karafka-web-0.4.0 lib/karafka/web/tracking/ttl_hash.rb