Class: Shrine::Plugins::StoreDimensions::DimensionsAnalyzer
- Inherits:
-
Object
- Object
- Shrine::Plugins::StoreDimensions::DimensionsAnalyzer
- Defined in:
- lib/shrine/plugins/store_dimensions.rb
Constant Summary collapse
- SUPPORTED_TOOLS =
[:fastimage, :mini_magick, :ruby_vips]
Instance Method Summary collapse
- #call(io) ⇒ Object
-
#initialize(tool, on_error: method(:fail)) ⇒ DimensionsAnalyzer
constructor
A new instance of DimensionsAnalyzer.
Constructor Details
#initialize(tool, on_error: method(:fail)) ⇒ DimensionsAnalyzer
Returns a new instance of DimensionsAnalyzer.
115 116 117 118 119 120 |
# File 'lib/shrine/plugins/store_dimensions.rb', line 115 def initialize(tool, on_error: method(:fail)) raise Error, "unknown dimensions analyzer #{tool.inspect}, supported analyzers are: #{SUPPORTED_TOOLS.join(",")}" unless SUPPORTED_TOOLS.include?(tool) @tool = tool @on_error = on_error end |
Instance Method Details
#call(io) ⇒ Object
122 123 124 125 126 |
# File 'lib/shrine/plugins/store_dimensions.rb', line 122 def call(io) dimensions = send(:"extract_with_#{@tool}", io) io.rewind dimensions end |