Sha256: 62fde5a2cbddd33e7ce308094b59d5e938891790e8e81fa955a557ed2306db66

Contents?: true

Size: 1.16 KB

Versions: 69

Compression:

Stored size: 1.16 KB

Contents

module Cul::Scv::Hydra::Solrizer
class Extractor < ::Solrizer::Extractor
  # Insert +field_value+ for +field_name+ into +solr_doc+
  # Handles inserting new values into a Hash while ensuring that you don't destroy or overwrite any existing values in the hash.
  # Ensures that field values are always appended to arrays within the values hash. 
  # Ensures that values are run through format_node_value
  # Also ensures that values are unique if specified
  # @param [Hash] solr_doc
  # @param [String] field_name
  # @param [String] field_value
  # @param [boolean] unique
  def self.insert_solr_field_value(solr_doc, field_name, field_value, unique=false)
    formatted_value = self.format_node_value(field_value)
    if solr_doc.has_key?(field_name)
      solr_doc[field_name] << formatted_value unless (unique and solr_doc[field_name].include? formatted_value)
    else
      solr_doc.merge!( {field_name => [formatted_value]} ) 
    end
    return solr_doc
  end

  # Instance Methods
  def insert_solr_field_value(solr_doc, field_name, field_value, unique=false)
    Cul::Scv::Hydra::Solrizer::Extractor.insert_solr_field_value(solr_doc, field_name, field_value, unique)
  end
end
end

Version data entries

69 entries across 69 versions & 1 rubygems

Version Path
cul_scv_hydra-0.22.6 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.22.5 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.22.4 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.22.3 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.22.2 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.22.1 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.22.0 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.21.8 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.21.7 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.21.6 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.21.5 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.21.4 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.21.3 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.21.2 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.21.0 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.20.1 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.20.0 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.19.5 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.19.4 lib/cul_scv_hydra/solrizer/extractor.rb
cul_scv_hydra-0.19.3 lib/cul_scv_hydra/solrizer/extractor.rb