class Traject::Indexer::MarcIndexer

An indexer sub-class that includes “extract_marc” and other macros from Traject::Macros::Marc21, and also adds some marc-specific default settings.

Public Class Methods

default_settings() click to toggle source
Calls superclass method Traject::Indexer::default_settings
# File lib/traject/indexer/marc_indexer.rb, line 8
def self.default_settings
  @default_settings ||= begin
    marc_settings = {
      "reader_class_name"       => "Traject::MarcReader",
      "marc_source.type"        => "binary",
    }
    super.merge(marc_settings)
  end
end

Public Instance Methods

source_record_id_proc() click to toggle source

Overridden from base Indexer, to get MARC 001 for log messages.

# File lib/traject/indexer/marc_indexer.rb, line 19
def source_record_id_proc
  @source_record_id_proc ||= lambda do |source_marc_record|
    if ( source_marc_record &&
         source_marc_record.kind_of?(MARC::Record) &&
         source_marc_record['001'] )
      source_marc_record['001'].value
    end
  end
end