Class: PgObjects::Manager

Inherits:
Object
  • Object
show all
Defined in:
lib/pg_objects/manager.rb

Overview

Manages process to create objects

Usage:

Manager.new(config, logger).load_files(:before).create_objects

or

Manager.new(config, logger).load_files(:after).create_objects

Instance Method Summary collapse

Instance Method Details

#create_objectsObject



29
30
31
# File 'lib/pg_objects/manager.rb', line 29

def create_objects
  objects.each { create_object(_1) }
end

#load_files(event) ⇒ Object

event: :before or :after

used to reference configuration settings before_path and after_path



18
19
20
21
22
23
24
25
26
27
# File 'lib/pg_objects/manager.rb', line 18

def load_files(event)
  validate_workability

  dir = config.send "#{event}_path"
  Dir[File.join(dir, '**', "*.{#{config.extensions.join(',')}}")].each do |path|
    objects << db_object_factory.create_instance(path)
  end

  self
end

#objectsObject



33
34
35
# File 'lib/pg_objects/manager.rb', line 33

def objects
  @objects ||= []
end