Class: EvilSeed::RecordDumper
- Inherits:
-
Object
- Object
- EvilSeed::RecordDumper
- Defined in:
- lib/evil_seed/record_dumper.rb
Overview
-
Runs all transformation objects for every tuple
-
Serializes transformed values back to basic types and writes it to dump
Constant Summary collapse
- MAX_TUPLES_PER_INSERT_STMT =
1_000
Instance Attribute Summary collapse
-
#configuration ⇒ Object
readonly
Returns the value of attribute configuration.
-
#model_class ⇒ Object
readonly
Returns the value of attribute model_class.
-
#relation_dumper ⇒ Object
readonly
Returns the value of attribute relation_dumper.
Instance Method Summary collapse
-
#call(attributes) ⇒ Boolean
Extracts, transforms, and dumps record
attributes. -
#initialize(model_class, configuration, relation_dumper) ⇒ RecordDumper
constructor
A new instance of RecordDumper.
-
#result ⇒ IO
Dump for this model’s table.
Constructor Details
#initialize(model_class, configuration, relation_dumper) ⇒ RecordDumper
14 15 16 17 18 19 20 21 |
# File 'lib/evil_seed/record_dumper.rb', line 14 def initialize(model_class, configuration, relation_dumper) @model_class = model_class @configuration = configuration @relation_dumper = relation_dumper @output = Tempfile.new(["evil_seed_#{model_class.table_name}_", '.sql']) @header_written = false @tuples_written = 0 end |
Instance Attribute Details
#configuration ⇒ Object (readonly)
Returns the value of attribute configuration.
10 11 12 |
# File 'lib/evil_seed/record_dumper.rb', line 10 def configuration @configuration end |
#model_class ⇒ Object (readonly)
Returns the value of attribute model_class.
10 11 12 |
# File 'lib/evil_seed/record_dumper.rb', line 10 def model_class @model_class end |
#relation_dumper ⇒ Object (readonly)
Returns the value of attribute relation_dumper.
10 11 12 |
# File 'lib/evil_seed/record_dumper.rb', line 10 def relation_dumper @relation_dumper end |
Instance Method Details
#call(attributes) ⇒ Boolean
Extracts, transforms, and dumps record attributes
25 26 27 28 29 |
# File 'lib/evil_seed/record_dumper.rb', line 25 def call(attributes) return false unless loaded!(attributes) write!(transform_and_anonymize(attributes)) true end |
#result ⇒ IO
32 33 34 35 |
# File 'lib/evil_seed/record_dumper.rb', line 32 def result finalize! @output end |