Class: Shrine::Plugins::InferExtension::ExtensionInferrer
- Inherits:
-
Object
- Object
- Shrine::Plugins::InferExtension::ExtensionInferrer
- Defined in:
- lib/shrine/plugins/infer_extension.rb
Constant Summary collapse
- SUPPORTED_TOOLS =
[:mime_types, :mini_mime]
Instance Method Summary collapse
- #call(mime_type) ⇒ Object
-
#initialize(tool) ⇒ ExtensionInferrer
constructor
A new instance of ExtensionInferrer.
Constructor Details
#initialize(tool) ⇒ ExtensionInferrer
Returns a new instance of ExtensionInferrer.
71 72 73 74 75 |
# File 'lib/shrine/plugins/infer_extension.rb', line 71 def initialize(tool) raise Error, "unknown extension inferrer #{tool.inspect}, supported inferrers are: #{SUPPORTED_TOOLS.join(",")}" unless SUPPORTED_TOOLS.include?(tool) @tool = tool end |
Instance Method Details
#call(mime_type) ⇒ Object
77 78 79 80 81 82 83 |
# File 'lib/shrine/plugins/infer_extension.rb', line 77 def call(mime_type) return nil if mime_type.nil? extension = send(:"infer_with_#{@tool}", mime_type) extension = ".#{extension}" unless extension.nil? || extension.start_with?(".") extension end |