module Shrine::Plugins::InferExtension::InstanceMethods

Public Instance Methods

infer_extension(mime_type) click to toggle source
# File lib/shrine/plugins/infer_extension.rb, line 54
def infer_extension(mime_type)
  self.class.infer_extension(mime_type)
end

Private Instance Methods

basic_location(io, metadata:) click to toggle source
Calls superclass method
# File lib/shrine/plugins/infer_extension.rb, line 60
def basic_location(io, metadata:)
  location = Pathname(super)

  if location.extname.empty? || opts[:infer_extension][:force]
    inferred_extension = self.class.infer_extension(metadata["mime_type"])
    location = location.sub_ext(inferred_extension) if inferred_extension
  end

  location.to_s
end