Sha256: c1f1db8edad874397b6119290b3222d5199ad57cf8fd60cc0e771c715332155d

Contents?: true

Size: 640 Bytes

Versions: 2

Compression:

Stored size: 640 Bytes

Contents

module Telekinesis
  module Consumer
    # A RecordProcessor that uses the given block to process records. Useful to
    # quickly define a consumer.
    #
    # Telekinesis::Consumer::Worker.new(stream: 'my-stream', app: 'tail') do
    #   Telekinesis::Consumer::Block.new do |records, checkpointer|
    #     records.each {|r| puts r}
    #   end
    # end
    class Block < BaseProcessor
      def initialize(&block)
        raise ArgumentError, "No block given" unless block_given?
        @block = block
      end

      def process_records(records, checkpointer)
        @block.call(records, checkpointer)
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
telekinesis-2.0.1-java lib/telekinesis/consumer/block.rb
telekinesis-2.0.0-java lib/telekinesis/consumer/block.rb