Class: Announce::Configuration
- Inherits:
-
Object
- Object
- Announce::Configuration
- Defined in:
- lib/announce/configuration.rb
Instance Attribute Summary collapse
-
#options ⇒ Object
readonly
Returns the value of attribute options.
Class Method Summary collapse
Instance Method Summary collapse
- #config_file ⇒ Object
- #configure ⇒ Object
-
#initialize(options) ⇒ Configuration
constructor
A new instance of Configuration.
Constructor Details
#initialize(options) ⇒ Configuration
Returns a new instance of Configuration.
35 36 37 38 39 |
# File 'lib/announce/configuration.rb', line 35 def initialize() = base = defined?(Rails) ? Rails.root : Dir.pwd [:config_file] ||= File.join(base, 'config', 'announce.yml') end |
Instance Attribute Details
#options ⇒ Object (readonly)
Returns the value of attribute options.
6 7 8 |
# File 'lib/announce/configuration.rb', line 6 def end |
Class Method Details
.aj_queue_adapter_name ⇒ Object
30 31 32 33 |
# File 'lib/announce/configuration.rb', line 30 def self.aj_queue_adapter_name ajqa = ::ActiveJob::Base.queue_adapter.name ajqa.match(/ActiveJob::QueueAdapters::(.*)Adapter/)[1].underscore end |
.configure(options = {}) ⇒ Object
8 9 10 11 |
# File 'lib/announce/configuration.rb', line 8 def self.configure( = {}) opts = new().configure Announce..merge!(opts) end |
.default_options ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/announce/configuration.rb', line 13 def self. {}.tap do |defaults| if defined?(ActiveJob) defaults[:queue_name_prefix] = ::ActiveJob::Base.queue_name_prefix defaults[:queue_name_delimiter] = ::ActiveJob::Base.queue_name_delimiter defaults[:adapter] = aj_queue_adapter_name else defaults[:queue_name_prefix] = ENV['RAILS_ENV'] || ENV['APP_ENV'] || 'development' defaults[:queue_name_delimiter] = '_' defaults[:adapter] = :inline end defaults[:app_name] = 'app' defaults[:namespace] = 'announce' end end |
Instance Method Details
#config_file ⇒ Object
41 42 43 |
# File 'lib/announce/configuration.rb', line 41 def config_file [:config_file] end |
#configure ⇒ Object
45 46 47 48 49 50 51 52 53 |
# File 'lib/announce/configuration.rb', line 45 def configure defaults = self.class. if File.exist?(config_file) defaults.merge(YAML.load(ERB.new(IO.read(config_file)).result).symbolize_keys) else Announce.logger.warn "PubSub file #{config_file} does not exist" defaults end end |