class FileHash

Attributes

op_file[RW]

Public Class Methods

new(attributes) click to toggle source
# File lib/file_sentry/file_hash.rb, line 5
def initialize(attributes)
  attributes.each {|attribute, value| self.send("#{attribute}=", value)}
end

Public Instance Methods

hash_file(encryption) click to toggle source
# File lib/file_sentry/file_hash.rb, line 9
def hash_file(encryption)
  begin
    self.send("digest_#{encryption.downcase}")
  rescue
    raise "No encryption found for: #{encryption}"
  end
end

Private Instance Methods

digest_md5() click to toggle source
# File lib/file_sentry/file_hash.rb, line 19
def digest_md5
  digest = Digest::MD5.file op_file.filepath
  op_file.hash = digest.hexdigest.upcase
end
digest_sha1() click to toggle source
# File lib/file_sentry/file_hash.rb, line 24
def digest_sha1
  digest = Digest::SHA1.file op_file.filepath
  op_file.hash = digest.hexdigest.upcase
end
digest_sha256() click to toggle source
# File lib/file_sentry/file_hash.rb, line 29
def digest_sha256
  digest = Digest::SHA256.file op_file.filepath
  op_file.hash = digest.hexdigest.upcase
end