Sha256: ab1e4242581febb7619775c053500233410813b54660bce0a43c5c36312ca382

Contents?: true

Size: 388 Bytes

Versions: 35

Compression:

Stored size: 388 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

35 entries across 33 versions & 6 rubygems

Version Path
kt-paperclip-5.4.0 lib/paperclip/tempfile_factory.rb
kt-paperclip-4.4.0 lib/paperclip/tempfile_factory.rb
paperclip-6.1.0 lib/paperclip/tempfile_factory.rb
paperclip-6.0.0 lib/paperclip/tempfile_factory.rb
paperclip-5.3.0 lib/paperclip/tempfile_factory.rb
paperclip-5.2.1 lib/paperclip/tempfile_factory.rb
paperclip-5.2.0 lib/paperclip/tempfile_factory.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/paperclip-5.1.0/lib/paperclip/tempfile_factory.rb
paperclip-5.1.0 lib/paperclip/tempfile_factory.rb
paperclip-5.0.0 lib/paperclip/tempfile_factory.rb
paperclip-4.3.7 lib/paperclip/tempfile_factory.rb
paperclip_jk-5.0.0.beta2 lib/paperclip/tempfile_factory.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/paperclip-4.3.6/lib/paperclip/tempfile_factory.rb
paperclip-5.0.0.beta2 lib/paperclip/tempfile_factory.rb
paperclip-5.0.0.beta1 lib/paperclip/tempfile_factory.rb
paperclip-4.3.6 lib/paperclip/tempfile_factory.rb
paperclip-4.3.5 lib/paperclip/tempfile_factory.rb
paperclip-4.3.4 lib/paperclip/tempfile_factory.rb
paperclip-4.3.3 lib/paperclip/tempfile_factory.rb
paperclip-4.3.2 lib/paperclip/tempfile_factory.rb