lib/deimos/config/configuration.rb in deimos-ruby-1.16.3 vs lib/deimos/config/configuration.rb in deimos-ruby-1.16.4

- old
+ new

@@ -30,10 +30,11 @@ validate_consumers validate_db_backend if self.config.producers.backend == :db end # Loads generated classes + # @return [void] def self.load_generated_schema_classes if Deimos.config.schema.generated_class_path.nil? raise 'Cannot use schema classes without schema.generated_class_path. Please provide a directory.' end @@ -41,10 +42,11 @@ rescue LoadError raise 'Cannot load schema classes. Please regenerate classes with rake deimos:generate_schema_models.' end # Ensure everything is set up correctly for the DB backend. + # @!visibility private def self.validate_db_backend begin require 'activerecord-import' rescue LoadError raise 'Cannot set producers.backend to :db without activerecord-import! Please add it to your Gemfile.' @@ -54,10 +56,11 @@ end end # Validate that consumers are configured correctly, including their # delivery mode. + # @!visibility private def self.validate_consumers Phobos.config.listeners.each do |listener| handler_class = listener.handler.constantize delivery = listener.delivery @@ -72,9 +75,10 @@ raise "Non-batch Consumer #{listener.handler} does not implement `consume`" end end end + # @!visibility private # @param kafka_config [FigTree::ConfigStruct] def self.configure_producer_or_consumer(kafka_config) klass = kafka_config.class_name.constantize klass.class_eval do topic(kafka_config.topic) if kafka_config.topic.present? && klass.respond_to?(:topic)