Class: Persey::Inspector

Inherits:
Object
  • Object
show all
Defined in:
lib/persey/inspector.rb

Class Method Summary collapse

Class Method Details

.analize(&block) ⇒ Object



10
11
12
13
14
# File 'lib/persey/inspector.rb', line 10

def analize(&block)
  @sources = []
  instance_eval(&block)
  @sources
end

.env(*args) ⇒ Object



29
30
31
# File 'lib/persey/inspector.rb', line 29

def env(*args)
  # Nithing. I do not want call method_missing
end

.source(source_type, config_file, namespace = nil, opts = {}) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/persey/inspector.rb', line 16

def source(source_type, config_file, namespace = nil, opts = {})
  klass = "persey/adapters/#{source_type}".camelize.constantize

  unless klass.config_exists?(config_file, opts: opts)
    raise MissingConfigFile, "Can't find #{source_type} config: #{config_file}"
  end

  @sources << { class: klass, file: config_file, namespace: namespace, opts: opts }

  override_config_file = config_file + '.override'
  @sources << { class: klass, file: override_config_file, namespace: namespace, opts: opts } if klass.config_exists?(override_config_file, opts: opts)
end