Sha256: 7d85bc71231214a51eebc2ab01816d046c5a544c41bced6def81c47e32677265

Contents?: true

Size: 707 Bytes

Versions: 25

Compression:

Stored size: 707 Bytes

Contents

# frozen_string_literal: true
module Dynflow
  module LoggerAdapters
    module Formatters
      class Abstract
        def initialize(base)
          @base = base
        end

        [:fatal, :error, :warn, :info, :debug].each do |method|
          define_method method do |message = nil, &block|
            if block
              @base.send method, &-> { format(block.call) }
            else
              @base.send method, format(message)
            end
          end
        end

        def level=(v)
          @base.level = v
        end

        def level
          @base.level
        end

        def format(message)
          raise NotImplementedError
        end
      end
    end
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
dynflow-1.8.2 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.8.1 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.8.0 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.7.0 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.11 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.10 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.8 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.7 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.6 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.5 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.4 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.3 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.2 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.6.1 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.4.9 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.4.8 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.5.0 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.4.7 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.4.6 lib/dynflow/logger_adapters/formatters/abstract.rb
dynflow-1.4.5 lib/dynflow/logger_adapters/formatters/abstract.rb