Sha256: 0721798cd5b7f74ba8dcbccd327be6ae4ac256cd4bf7c39e8f00fdaf6953a5c5

Contents?: true

Size: 387 Bytes

Versions: 14

Compression:

Stored size: 387 Bytes

Contents

module Paperclip
  class TempfileFactory
    def generate(name = random_name)
      @name = name
      file = Tempfile.new([basename, extension])
      file.binmode
      file
    end

    def extension
      File.extname(@name)
    end

    def basename
      Digest::MD5.hexdigest(File.basename(@name, extension))
    end

    def random_name
      SecureRandom.uuid
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
kt-paperclip-7.2.2 lib/paperclip/tempfile_factory.rb
kt-paperclip-7.2.1 lib/paperclip/tempfile_factory.rb
kt-paperclip-7.2.0 lib/paperclip/tempfile_factory.rb
kt-paperclip-6.4.2 lib/paperclip/tempfile_factory.rb
kt-paperclip-7.1.1 lib/paperclip/tempfile_factory.rb
kt-paperclip-7.1.0 lib/paperclip/tempfile_factory.rb
kt-paperclip-7.0.1 lib/paperclip/tempfile_factory.rb
kt-paperclip-7.0.0 lib/paperclip/tempfile_factory.rb
kt-paperclip-6.4.1 lib/paperclip/tempfile_factory.rb
kt-paperclip-6.4.0 lib/paperclip/tempfile_factory.rb
kt-paperclip-6.3.0 lib/paperclip/tempfile_factory.rb
kt-paperclip-6.2.2 lib/paperclip/tempfile_factory.rb
kt-paperclip-6.2.1 lib/paperclip/tempfile_factory.rb
kt-paperclip-6.2.0 lib/paperclip/tempfile_factory.rb