Class: Sqrbl::UnifiedConversionWriter

Inherits:
BaseConversionWriter show all
Defined in:
lib/sqrbl/unified_conversion_writer.rb

Overview

Writes two files: output_directory/all_up.sql and output_directory/all_down.sql.

  • output_directory/all_up.sql contains all ‘up’ steps, in creation order.

  • output_directory/all_down.sql contains all ‘down’ steps, in reverse creation order.

Instance Attribute Summary

Attributes inherited from BaseConversionWriter

#conversion, #output_directory

Instance Method Summary collapse

Methods inherited from BaseConversionWriter

inherited, #initialize, subclasses, write_conversion!

Constructor Details

This class inherits a constructor from Sqrbl::BaseConversionWriter

Instance Method Details

#all_down_steps_outputObject

Output from all ‘down’ steps, in reverse creation order



19
20
21
# File 'lib/sqrbl/unified_conversion_writer.rb', line 19

def all_down_steps_output
  conversion.down_steps.reverse.map(&:output).join
end

#all_up_steps_outputObject

Output from all ‘up’ steps, in creation order



14
15
16
# File 'lib/sqrbl/unified_conversion_writer.rb', line 14

def all_up_steps_output
  conversion.up_steps.map(&:output).join
end

#write!Object

Create all_up.sql and all_down.sql in output_directory.



7
8
9
10
11
# File 'lib/sqrbl/unified_conversion_writer.rb', line 7

def write!
  ensure_dir_exists(output_directory)
  write_file(up_file, all_up_steps_output)
  write_file(down_file, all_down_steps_output)
end