Sha256: 8de0935610238121622e56c649758d484c14915bfb133795f2f457d01c0a79c9

Contents?: true

Size: 1.59 KB

Versions: 13

Compression:

Stored size: 1.59 KB

Contents

module Hermes
  class DependenciesContainer
    def self.[](name)
      public_send(name)
    end

    def self.serializer
      Hermes::Serializer.new
    end

    def self.config
      Hermes.configuration
    end

    def self.hutch_config
      config.hutch
    end

    def self.hutch
      Hutch
    end

    def self.publisher
      Hermes::Publisher.instance
    end

    def self.clock
      config.clock
    end

    def self.logger
      config.logger
    end

    def self.instrumenter
      config.instrumenter
    end

    def self.distributed_trace_repository
      Hermes::DistributedTraceRepository.new(
        config: config,
        distributed_trace_database: Hermes::DistributedTrace,
        distributes_tracing_mapper: distributes_tracing_mapper,
        database_error_handler: database_error_handler
      )
    end

    def self.distributes_tracing_mapper
      config.distributes_tracing_mapper
    end

    def self.event_producer
      Hermes::EventProducer
    end

    def self.event_processor
      Hermes::EventProcessor
    end

    def self.global_store
      RequestStore.store
    end

    def self.database_error_handler
      config.database_error_handler
    end

    def self.producer_error_handler
      config.producer_error_handler
    end

    def self.producer_retryable
      config.producer_retryable
    end

    def self.hutch_logger
      Hutch.logger
    end

    def self.logger_params_filter
      config.logger_params_filter
    end

    def self.objects_resolver
      Object
    end

    def self.consumer_builder
      Hermes::ConsumerBuilder.new
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
hermes-rb-0.9.1 lib/hermes/dependencies_container.rb
hermes-rb-0.9.0 lib/hermes/dependencies_container.rb
hermes-rb-0.8.0 lib/hermes/dependencies_container.rb
hermes-rb-0.7.5 lib/hermes/dependencies_container.rb
hermes-rb-0.7.4 lib/hermes/dependencies_container.rb
hermes-rb-0.7.3 lib/hermes/dependencies_container.rb
hermes-rb-0.7.2 lib/hermes/dependencies_container.rb
hermes-rb-0.7.1 lib/hermes/dependencies_container.rb
hermes-rb-0.7.0 lib/hermes/dependencies_container.rb
hermes-rb-0.6.1 lib/hermes/dependencies_container.rb
hermes-rb-0.6.0 lib/hermes/dependencies_container.rb
hermes-rb-0.5.0 lib/hermes/dependencies_container.rb
hermes-rb-0.4.0 lib/hermes/dependencies_container.rb