Sha256: 763724ce4fd3ad229a33e0dcd3054e9e7ce56832f27f5f789203663c48fe58ca

Contents?: true

Size: 1 KB

Versions: 18

Compression:

Stored size: 1 KB

Contents

# frozen_string_literal: true

module OpenTracing
  module Instrumentation
    module Hutch
      # ConsumeTracerBuilder build and configure ConsumeTracer.
      # Should be used for configuration of ConsumeTracer.
      #
      # Usage:
      #   hutch_tracer_builder = \
      #     OpenTracing::Instrumentation::Hutch::ConsumeTracerBuilder.new do |config|
      #       config.tracer = CustomTracer.new
      #     end
      #   Hutch::Config.set(:tracer, hutch_tracer_builder)
      #
      # @param config [ConsumeTracerConfig]
      # @yield [ConsumeTracerConfig]
      class ConsumeTracerBuilder
        def initialize(config: ConsumeTracerConfig.new)
          yield config if block_given?
          @config = config.dup
        end

        # Build conifgured ConsumeTracer
        #
        # ! Its not constructor
        #
        # @return ConsumeTracer
        def new(consumer)
          ConsumeTracer.new(
            consumer,
            config: @config,
          )
        end
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
opentracing-instrumentation-0.2.1 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.2.0 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.18 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.17 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.16 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.15 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.14 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.13 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.12 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.11 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.10 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.9 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.8 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.7 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.6 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.5 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.4 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb
opentracing-instrumentation-0.1.3 lib/opentracing/instrumentation/hutch/consume_tracer_builder.rb