Module: GnCrossmap

Defined in:
lib/gn_crossmap.rb,
lib/gn_crossmap/stats.rb,
lib/gn_crossmap/reader.rb,
lib/gn_crossmap/writer.rb,
lib/gn_crossmap/version.rb,
lib/gn_crossmap/resolver.rb,
lib/gn_crossmap/collector.rb,
lib/gn_crossmap/column_collector.rb,
lib/gn_crossmap/result_processor.rb,
lib/gn_crossmap/sci_name_collector.rb

Overview

Namespace module for crossmapping checklists to GN sources

Defined Under Namespace

Classes: Collector, ColumnCollector, Reader, Resolver, ResultProcessor, SciNameCollector, Stats, Writer

Constant Summary collapse

INPUT_MODE =
"r:utf-8".freeze
OUTPUT_MODE =
"w:utf-8".freeze
MATCH_TYPES =
{
  0 => "No match",
  1 => "Exact string match",
  2 => "Canonical form exact match",
  3 => "Canonical form fuzzy match",
  4 => "Partial canonical form match",
  5 => "Partial canonical form fuzzy match",
  6 => "Genus part match",
  7 => "Error in matching"
}.freeze
VERSION =
"1.3.0".freeze

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.loggerObject

rubocop:enable all



53
54
55
# File 'lib/gn_crossmap.rb', line 53

def logger
  @logger ||= Logger.new(STDERR)
end

Class Method Details

.log(message) ⇒ Object



57
58
59
# File 'lib/gn_crossmap.rb', line 57

def log(message)
  logger.info(message)
end

.run(input, output, data_source_id, skip_original, alt_headers = []) ⇒ Object

rubocop:disable Metrics/AbcSize



38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/gn_crossmap.rb', line 38

def run(input, output, data_source_id, skip_original, alt_headers = [])
  stats = Stats.new
  input_io, output_io = io(input, output)
  reader = Reader.new(input_io, input_name(input),
                      skip_original, alt_headers, stats)
  data = block_given? ? reader.read(&Proc.new) : reader.read
  writer = Writer.new(output_io, reader.original_fields,
                      output_name(output))
  resolver = Resolver.new(writer, data_source_id, stats)
  block_given? ? resolver.resolve(data, &Proc.new) : resolver.resolve(data)
  output
end

.versionObject



5
6
7
# File 'lib/gn_crossmap/version.rb', line 5

def self.version
  VERSION
end