lib/solrizer/xml/terminology_based_solrizer.rb in solrizer-0.3.1 vs lib/solrizer/xml/terminology_based_solrizer.rb in solrizer-0.3.2

- old
+ new

@@ -67,19 +67,29 @@ end generic_field_name_base = OM::XML::Terminology.term_generic_name(*term_pointer) field_mapper.solr_names_and_values(generic_field_name_base, node_value, term.data_type, term.index_as).each do |field_name, field_value| - solr_doc << Solr::Field.new(field_name => field_value) + unless field_value.join("").strip.blank? + solr_doc << Solr::Field.new(field_name => self.format_node_value(field_value)) + end end if term_pointer.length > 1 hierarchical_field_name_base = OM::XML::Terminology.term_hierarchical_name(*term_pointer) field_mapper.solr_names_and_values(hierarchical_field_name_base, node_value, term.data_type, term.index_as).each do |field_name, field_value| - solr_doc << Solr::Field.new(field_name => field_value) + unless field_value.join("").strip.blank? + solr_doc << Solr::Field.new(field_name => self.format_node_value(field_value)) + end end end solr_doc + end + + # Strips the majority of whitespace from the values array and then joins them with a single blank delimitter + # @values Array of strings representing the values returned + def self.format_node_value values + values.map{|val| val.gsub(/\s+/,' ').strip}.join(" ") end # Instance Methods attr_accessor :field_mapper