Sha256: 8bb8578a81437e3e139a4953098bd6835388fe8c40fa26c8d53480b0f9c609ba

Contents?: true

Size: 1.8 KB

Versions: 3

Compression:

Stored size: 1.8 KB

Contents

# frozen_string_literal: true

require 'active_support'
require 'active_support/concern'
require 'active_support/configurable'
require 'active_support/time'
require 'active_support/time_with_zone'
require 'active_support/core_ext/object'
require 'active_support/core_ext/module'
require 'active_support/core_ext/hash'
require 'active_support/core_ext/string'
require 'waterdrop'
require 'avro_turf/messaging'
require 'karafka'
require 'karafka-sidekiq-backend'
require 'sparsify'
require 'retries'
require 'erb'

# The top level namespace for the rimless gem.
module Rimless
  # Configure the relative gem code base location
  root_path = Pathname.new("#{__dir__}/rimless")

  # Top level elements
  autoload :Configuration, 'rimless/configuration'
  autoload :ConfigurationHandling, 'rimless/configuration_handling'
  autoload :AvroHelpers, 'rimless/avro_helpers'
  autoload :AvroUtils, 'rimless/avro_utils'
  autoload :KafkaHelpers, 'rimless/kafka_helpers'
  autoload :Dependencies, 'rimless/dependencies'
  autoload :BaseConsumer, 'rimless/base_consumer'
  autoload :Consumer, 'rimless/consumer'
  autoload :ConsumerJob, 'rimless/consumer_job'

  # All Karafka-framework related components
  module Karafka
    autoload :Base64Interchanger, 'rimless/karafka/base64_interchanger'
    autoload :PassthroughMapper, 'rimless/karafka/passthrough_mapper'
    autoload :AvroDeserializer, 'rimless/karafka/avro_deserializer'
  end

  # Load standalone code
  require 'rimless/version'
  require 'rimless/railtie' if defined? Rails

  # Include top-level features
  include Rimless::ConfigurationHandling
  include Rimless::AvroHelpers
  include Rimless::KafkaHelpers
  include Rimless::Dependencies
  include Rimless::Consumer

  # Load all initializers of the gem
  Dir[root_path.join('initializers/**/*.rb')].sort.each { |path| require path }
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
rimless-1.8.0 lib/rimless.rb
rimless-1.7.7 lib/rimless.rb
rimless-1.7.6 lib/rimless.rb