Sha256: 3e23a19b79dcd90dfab22d67aaf3dad6730705a4d1bfea3934e4bece23402c25

Contents?: true

Size: 531 Bytes

Versions: 43

Compression:

Stored size: 531 Bytes

Contents

require 'digest/md5'
 
module Trackman
  module Assets
    module Components
      module Hashable
      
        def data
          @data ||= read_file
        end

        def file_hash
          Digest::MD5.hexdigest(data)
        end
        
        protected
          def read_file
            begin
              file = File.open(path)
              return file.read
            rescue
              return nil
            ensure
              file.close 
            end    
          end
      end      
    end
  end
end

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
trackman-0.4.2 lib/trackman/assets/components/hashable.rb
trackman-0.4.1 lib/trackman/assets/components/hashable.rb
trackman-0.4.0 lib/trackman/assets/components/hashable.rb
trackman-0.3.5 lib/trackman/assets/components/hashable.rb
trackman-0.3.4 lib/trackman/assets/components/hashable.rb
trackman-0.3.2 lib/trackman/assets/components/hashable.rb
trackman-0.3.1 lib/trackman/assets/components/hashable.rb
trackman-0.3.0 lib/trackman/assets/components/hashable.rb
trackman-0.2.90 lib/trackman/assets/components/hashable.rb
trackman-0.2.89 lib/trackman/assets/components/hashable.rb
trackman-0.2.88 lib/trackman/assets/components/hashable.rb
trackman-0.2.87 lib/trackman/assets/components/hashable.rb
trackman-0.2.86 lib/trackman/assets/components/hashable.rb
trackman-0.2.85 lib/trackman/assets/components/hashable.rb
trackman-0.2.84 lib/trackman/assets/components/hashable.rb
trackman-0.2.83 lib/trackman/assets/components/hashable.rb
trackman-0.2.82 lib/trackman/assets/components/hashable.rb
trackman-0.2.81 lib/trackman/assets/components/hashable.rb
trackman-0.2.80 lib/trackman/assets/components/hashable.rb
trackman-0.2.65 lib/trackman/assets/components/hashable.rb