Sha256: 7704ae6b233de9e70785caa24ad0c3622ec0352feea28c1ddb8d3edbe82d2f2f
Contents?: true
Size: 772 Bytes
Versions: 5
Compression:
Stored size: 772 Bytes
Contents
require 'digest' module DataSeeder class SeedFile < ActiveRecord::Base def self.file_hash hash = {} all.each do |seed_file| hash[seed_file.path] = seed_file end hash end def self.load(path) seed_file = self.file_hash[path] || new(path: path) seed_file.load end def load new_sha256 = Digest::SHA256.file(path).hexdigest if self.sha256 != new_sha256 self.sha256 = new_sha256 ext = File.extname(self.path)[1..-1] return unless ext loader = DataSeeder.config.loaders[ext] unless loader DataSeeder.logger.info { "Warning: No loader for #{path}"} return end loader.process(path) save! end end end end
Version data entries
5 entries across 5 versions & 1 rubygems