Class: Bulkrax::CsvTemplate::CsvBuilder
- Inherits:
-
Object
- Object
- Bulkrax::CsvTemplate::CsvBuilder
- Defined in:
- app/services/bulkrax/csv_template/csv_builder.rb
Overview
Builds CSV content
Constant Summary collapse
- IGNORED_PROPERTIES =
%w[ admin_set_id alternate_ids bulkrax_identifier collection_type_gid contexts created_at date date_modified date_uploaded depositor embargo embargo_id file_ids has_model head internal_resource is_child lease lease_id member_ids member_of_collection_ids modified_date new_record on_behalf_of owner proxy_depositor rendering_ids representative_id schema_version split_from_pdf_id state tail thumbnail_id updated_at ].freeze
Instance Method Summary collapse
- #generate_string ⇒ Object
-
#initialize(service) ⇒ CsvBuilder
constructor
A new instance of CsvBuilder.
- #write_to_file(file_path) ⇒ Object
Constructor Details
#initialize(service) ⇒ CsvBuilder
Returns a new instance of CsvBuilder.
26 27 28 29 30 31 32 |
# File 'app/services/bulkrax/csv_template/csv_builder.rb', line 26 def initialize(service) @service = service @column_builder = CsvTemplate::ColumnBuilder.new(service) @row_builder = CsvTemplate::RowBuilder.new(service) @header_row = nil @required_headings = [] end |
Instance Method Details
#generate_string ⇒ Object
39 40 41 |
# File 'app/services/bulkrax/csv_template/csv_builder.rb', line 39 def generate_string CSV.generate { |csv| write_rows(csv) } end |
#write_to_file(file_path) ⇒ Object
34 35 36 37 |
# File 'app/services/bulkrax/csv_template/csv_builder.rb', line 34 def write_to_file(file_path) FileUtils.mkdir_p(File.dirname(file_path)) CSV.open(file_path, "w") { |csv| write_rows(csv) } end |