Sha256: 63318f3aeff44604d7e0c4e9bc8652c87a7ab61cd24daaf12f91a583d4ac7309

Contents?: true

Size: 679 Bytes

Versions: 22

Compression:

Stored size: 679 Bytes

Contents

module MetricFu
  class Reporter
    def initialize(formatters=nil)
      @formatters = Array(formatters)
    end

    def start
      notify :start
    end

    def finish
      notify :finish
    end

    def start_metric(metric)
      mf_log "** STARTING METRIC #{metric}"
      notify :start_metric, metric
    end

    def finish_metric(metric)
      mf_log "** ENDING METRIC #{metric}"
      notify :finish_metric, metric
    end

    def display_results
      notify :display_results
    end

    protected

    def notify(event, *args)
      @formatters.each do |formatter|
        formatter.send(event, *args) if formatter.respond_to?(event)
      end
    end
  end
end

Version data entries

22 entries across 22 versions & 1 rubygems

Version Path
metric_fu-4.11.3 lib/metric_fu/reporter.rb
metric_fu-4.11.2 lib/metric_fu/reporter.rb
metric_fu-4.11.1 lib/metric_fu/reporter.rb
metric_fu-4.11.0 lib/metric_fu/reporter.rb
metric_fu-4.10.0 lib/metric_fu/reporter.rb
metric_fu-4.9.0 lib/metric_fu/reporter.rb
metric_fu-4.8.0 lib/metric_fu/reporter.rb
metric_fu-4.7.4 lib/metric_fu/reporter.rb
metric_fu-4.7.3 lib/metric_fu/reporter.rb
metric_fu-4.7.2 lib/metric_fu/reporter.rb
metric_fu-4.7.1 lib/metric_fu/reporter.rb
metric_fu-4.7.0 lib/metric_fu/reporter.rb
metric_fu-4.6.0 lib/metric_fu/reporter.rb
metric_fu-4.5.2 lib/metric_fu/reporter.rb
metric_fu-4.5.1 lib/metric_fu/reporter.rb
metric_fu-4.4.4 lib/metric_fu/reporter.rb
metric_fu-4.4.3 lib/metric_fu/reporter.rb
metric_fu-4.4.2 lib/metric_fu/reporter.rb
metric_fu-4.4.1 lib/metric_fu/reporter.rb
metric_fu-4.4.0 lib/metric_fu/reporter.rb