Sha256: 45409dd4ab60a33c951cab6584063bd356fdc7a2b91b579a95581a9c9a59b36b
Contents?: true
Size: 828 Bytes
Versions: 2
Compression:
Stored size: 828 Bytes
Contents
require 'checkm/manifest' require 'checkm/entry' require 'digest/md5' require 'digest/sha1' require 'digest/sha2' module Checkm # Size (in bytes) to read (in chunks) to compute checksums CHUNK_SIZE = 8*1024*1024 # Compute the checksum 'alg' for a file # @param [File] file # @param [String] alg md5, sha1, sha256, dir def self.checksum file, alg digest_alg = case alg when nil return true when /md5/ Digest::MD5.new when /sha1/ Digest::SHA1.new when /sha256/ Digest::SHA2.new(256) when /dir/ return File.directory? file else return false end while not file.eof? and chunk = file.readpartial(CHUNK_SIZE) digest_alg << chunk end digest_alg.hexdigest end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
checkm-0.1.1 | lib/checkm.rb |
checkm-0.1.0 | lib/checkm.rb |