def load_persistent_maps
@pm = {}
maps.each do |map_sym|
hash = {}
Dir[File.join data_dir, "#{map_sym}-*.csv"].sort.each do |filename|
reader = CSV.open(filename, 'r')
header = reader.shift
raise PersistentMapError, "Importing :#{map_sym} from file #{filename}" unless header == (pm_csv_headers map_sym)
reader.each do |row|
key, value = pm_decode_row map_sym, row
delkey = row[-1] == '-'
if delkey
hash.delete key
else
hash[key] = value
end
end
end
@pm[map_sym] = add_checks(DeltaHash[hash], self.class.map_description[map_sym], map_sym)
end
end