Module: Shrine::Plugins::InferExtension
- Defined in:
- lib/shrine/plugins/infer_extension.rb
Overview
Documentation lives in [doc/plugins/infer_extension.md] on GitHub.
[doc/plugins/infer_extension.md]: github.com/shrinerb/shrine/blob/master/doc/plugins/infer_extension.md
Defined Under Namespace
Modules: ClassMethods, InstanceMethods Classes: ExtensionInferrer
Constant Summary collapse
- LOG_SUBSCRIBER =
-> (event) do Shrine.logger.info "Extension (#{event.duration}ms) – #{{ mime_type: event[:mime_type], uploader: event[:uploader], }.inspect}" end
Class Method Summary collapse
Class Method Details
.configure(uploader, opts = {}) ⇒ Object
16 17 18 19 20 21 22 23 24 |
# File 'lib/shrine/plugins/infer_extension.rb', line 16 def self.configure(uploader, opts = {}) uploader.opts[:infer_extension] ||= { inferrer: :mime_types, force: false, log_subscriber: LOG_SUBSCRIBER } uploader.opts[:infer_extension].merge!(opts) # instrumentation plugin integration if uploader.respond_to?(:subscribe) uploader.subscribe(:extension, &uploader.opts[:infer_extension][:log_subscriber]) end end |