module Pipeline::Config

This defines configuration for the pipeline.

Public Class Methods

[](attr)
Alias for: get
[]=(attr, value)
Alias for: set
check_attr(attr) click to toggle source
# File lib/pipeline/config.rb, line 28
def self.check_attr(attr)
  unless user_config.key?(attr)
    fail UnknownAttributeError, "#{attr} is not a valid config attribute"
  end
end
get(attr) click to toggle source
# File lib/pipeline/config.rb, line 13
def self.get(attr)
  check_attr(attr)
  user_config[attr]
end
Also aliased as: []
initialize(params = {}) click to toggle source
# File lib/pipeline/config.rb, line 9
def self.initialize(params = {})
  @config = { log_level: Logger::INFO }.merge(params)
end
method_missing(method, *args, &block) click to toggle source
Calls superclass method
# File lib/pipeline/config.rb, line 39
def self.method_missing(method, *args, &block)
  attr = method.to_s.sub(/=$/, '').to_sym
  return super unless user_config.key?(attr)

  if method =~ /=$/
    set(attr, args.first)
  else
    get(attr)
  end
end
set(attr, value) click to toggle source
# File lib/pipeline/config.rb, line 18
def self.set(attr, value)
  check_attr(attr)
  user_config[attr] = value
end
Also aliased as: []=
user_config() click to toggle source
# File lib/pipeline/config.rb, line 34
def self.user_config
  initialize unless @config
  @config
end