class Hanko::Fingerprint
Attributes
cachable[W]
prefix[W]
suffix[W]
Public Class Methods
digest_class=(klass)
click to toggle source
# File lib/hanko/fingerprint.rb, line 16 def digest_class=(klass) @cached_pon = {} @digest_class = klass end
pon(assets_dir, source)
click to toggle source
# File lib/hanko/fingerprint.rb, line 8 def pon(assets_dir, source) if cachable? cached_pon[source] ||= generate_pon(assets_dir, source) else generate_pon(assets_dir, source) end end
Private Class Methods
cachable?()
click to toggle source
# File lib/hanko/fingerprint.rb, line 45 def cachable? return @cachable if defined?(@cachable) true end
cached_pon()
click to toggle source
# File lib/hanko/fingerprint.rb, line 23 def cached_pon @cached_pon ||= {} end
digest_class()
click to toggle source
# File lib/hanko/fingerprint.rb, line 40 def digest_class return @digest_class if defined?(@digest_class) ::Digest::SHA256 end
file_digest(path)
click to toggle source
# File lib/hanko/fingerprint.rb, line 36 def file_digest(path) digest_class.file(path).hexdigest end
generate_pon(assets_dir, source)
click to toggle source
# File lib/hanko/fingerprint.rb, line 27 def generate_pon(assets_dir, source) path = File.join(assets_dir || '', source) return '' unless File.file?(path) fp = file_digest(path) fp = "#{prefix}#{fp}" if prefix fp = "#{fp}#{suffix}" if suffix fp end
prefix()
click to toggle source
# File lib/hanko/fingerprint.rb, line 50 def prefix @prefix if defined?(@prefix) end
suffix()
click to toggle source
# File lib/hanko/fingerprint.rb, line 54 def suffix @suffix if defined?(@suffix) end