Class: ETL::Processor::TruncateProcessor

Inherits:
Processor
  • Object
show all
Defined in:
lib/etl/processor/truncate_processor.rb

Overview

A processor which will truncate a table. Use as a pre-processor for cleaning out a table prior to loading

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(control, configuration) ⇒ TruncateProcessor

Initialize the processor

Options:

  • :target: The target connection

  • :table: The table name



17
18
19
20
21
22
# File 'lib/etl/processor/truncate_processor.rb', line 17

def initialize(control, configuration)
  super
  #@file = File.join(File.dirname(control.file), configuration[:file])
  @target = configuration[:target] || {}
  @table = configuration[:table]
end

Instance Attribute Details

#tableObject (readonly)

Defines the table to truncate



7
8
9
# File 'lib/etl/processor/truncate_processor.rb', line 7

def table
  @table
end

#targetObject (readonly)

Defines the database connection to use



10
11
12
# File 'lib/etl/processor/truncate_processor.rb', line 10

def target
  @target
end

Instance Method Details

#processObject



24
25
26
27
# File 'lib/etl/processor/truncate_processor.rb', line 24

def process
  conn = ETL::Engine.connection(target)
  conn.truncate(table_name)
end