Module: ISBNRanges

Extended by:
ISBNRanges
Included in:
ISBNRanges
Defined in:
lib/isbnranges.rb,
lib/isbnranges/version.rb,
lib/isbnranges/datafiles.rb

Constant Summary collapse

RANGE_DATE =
Date.parse(File.read(range_date_file))
VERSION =
"2025.7"
RANGE_MESSAGE_FILE =
"RangeMessage.xml"
REGISTRATION_GROUP_RANGES_FILE =
"registration_group_ranges.txt"
REGISTRANT_RANGES_FILE =
"registrant_ranges.txt"
RANGE_DATE_FILE =
"range_date.txt"

Instance Method Summary collapse

Instance Method Details

#load_ranges(range_file) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/isbnranges.rb', line 13

def load_ranges(range_file)
  ranges = {}
  agencies = {}
  File.open(range_file, "r") do |f|
    f.each_line do |line|
      next if line.start_with?("#")
      g, r, a = line.chomp.split(":")
      ranges[g] = r.split(",").map{|r| r.split("-")} unless r.nil?
      agencies[g] = a unless r.nil?
    end
  end
  [ranges, agencies]
end