Class: MasterLoader

Inherits:
Object show all
Includes:
Singleton
Defined in:
lib/dataload/master_loader.rb

Instance Method Summary collapse

Instance Method Details

#add(tl) ⇒ Object



12
13
14
# File 'lib/dataload/master_loader.rb', line 12

def add(tl)
  self.table_hash[tl.table_name.to_s] = tl
end

#connect!Object



31
32
33
34
35
36
37
38
39
# File 'lib/dataload/master_loader.rb', line 31

def connect!
  if db_ops[:adapter].to_s == 'sqlserver'
    gem 'activerecord-sqlserver-adapter'
    require 'active_record/connection_adapters/sqlserver_adapter'
    require File.dirname(__FILE__) + "/sqlserver_ext"
  end
  ActiveRecord::Base.establish_connection(db_ops)
  Dataload.log "Established Connection"
end

#delete_rows!Object



15
16
17
# File 'lib/dataload/master_loader.rb', line 15

def delete_rows!
  tables_in_delete_order.each { |t| t.manager.delete_rows! }
end

#load_rows!Object



18
19
20
# File 'lib/dataload/master_loader.rb', line 18

def load_rows!
  tables_in_load_order.each { |t| t.loader.load! }
end

#run!Object



21
22
23
24
25
26
27
28
29
30
# File 'lib/dataload/master_loader.rb', line 21

def run!
  tables_in_load_order.each do |t| 
    t.loader.block_size = block_size 
  end
  tm("MasterLoader run") do
    connect!
    delete_rows!
    load_rows!
  end
end