module Jobi

Constants

VERSION

Public Class Methods

client_class_name() click to toggle source
# File lib/jobi.rb, line 34
def client_class_name
  configuration.client.capitalize
end
configuration() click to toggle source
# File lib/jobi.rb, line 16
def configuration
  @configuration ||= Configuration.new
end
configure() { |configuration| ... } click to toggle source
# File lib/jobi.rb, line 20
def configure
  yield(configuration)
  configuration.setup_logger
  start
end
consumer?() click to toggle source
# File lib/jobi.rb, line 38
def consumer?
  configuration.act_as_consumer
end
logger() click to toggle source
# File lib/jobi.rb, line 26
def logger
  configuration.logger
end
publisher?() click to toggle source
# File lib/jobi.rb, line 42
def publisher?
  configuration.act_as_publisher
end
session() click to toggle source
# File lib/jobi.rb, line 30
def session
  @session ||= client_class.new(configuration.send(client_config_method))
end

Private Class Methods

client_class() click to toggle source
# File lib/jobi.rb, line 52
def client_class
  constantize("Jobi::Clients::#{client_class_name}")
end
client_config_method() click to toggle source
# File lib/jobi.rb, line 48
def client_config_method
  "#{client_class_name.downcase}_config"
end
start() click to toggle source
# File lib/jobi.rb, line 56
def start
  return unless consumer?

  configuration.jobs.each do |job_klass|
    constantize(job_klass).consume_messages
  end
end