Class: Bulkrax::SampleCsvService::ValueDeterminer
- Inherits:
-
Object
- Object
- Bulkrax::SampleCsvService::ValueDeterminer
- Defined in:
- app/services/bulkrax/sample_csv_service/value_determiner.rb
Overview
Determines values for CSV cells
Instance Method Summary collapse
- #determine_value(column, model_name, field_list) ⇒ Object
-
#initialize(service) ⇒ ValueDeterminer
constructor
A new instance of ValueDeterminer.
Constructor Details
#initialize(service) ⇒ ValueDeterminer
Returns a new instance of ValueDeterminer.
6 7 8 9 |
# File 'app/services/bulkrax/sample_csv_service/value_determiner.rb', line 6 def initialize(service) @service = service @column_builder = SampleCsvService::ColumnBuilder.new(service) end |
Instance Method Details
#determine_value(column, model_name, field_list) ⇒ Object
11 12 13 14 15 16 17 18 19 20 |
# File 'app/services/bulkrax/sample_csv_service/value_determiner.rb', line 11 def determine_value(column, model_name, field_list) key = @service.mapping_manager.mapped_to_key(column) required_terms = field_list.dig(model_name, 'required_terms') if field_list.dig(model_name, "properties")&.include?(key) mark_required_or_optional(key, required_terms) elsif special_column?(column, key) special_value(column, key, model_name, required_terms) end end |