Sha256: 0f5b06c132914a94ce442e5f74a8ed92e105c9940a94f6a1c8ca6f8a26c053c0

Contents?: true

Size: 716 Bytes

Versions: 4

Compression:

Stored size: 716 Bytes

Contents

require 'whirled_peas/null_logger'

require_relative 'consumer'

module WhirledPeas
  module Frame
    class DebugConsumer < Consumer
      LOGGER_ID = 'PRINTER'

      def initialize(output=STDOUT, logger=NullLogger.new)
        @output = output
        @logger = logger
      end

      def enqueue(name, duration, args)
        if name == EOF
          output.puts "EOF frame detected"
        else
          displayed_for = duration ? "#{duration} second(s)" : '1 frame'
          args_str = args.empty? ? '' : " '#{JSON.generate(args)}'"
          output.puts "Frame '#{name}' displayed for #{displayed_for}#{args_str}"
        end
      end

      private

      attr_reader :output, :logger
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
whirled_peas-0.7.1 lib/whirled_peas/frame/debug_consumer.rb
whirled_peas-0.7.0 lib/whirled_peas/frame/debug_consumer.rb
whirled_peas-0.6.0 lib/whirled_peas/frame/debug_consumer.rb
whirled_peas-0.5.0 lib/whirled_peas/frame/debug_consumer.rb