lib/image_processing/processor.rb in image_processing-1.0.0 vs lib/image_processing/processor.rb in image_processing-1.1.0
- old
+ new
@@ -2,9 +2,19 @@
class Processor
def initialize(pipeline)
@pipeline = pipeline
end
+ def apply(image, operations)
+ operations.inject(image) do |result, (name, args)|
+ if args == true || args.nil?
+ apply_operation(name, result)
+ else
+ apply_operation(name, result, *args)
+ end
+ end
+ end
+
def apply_operation(name, image, *args)
if respond_to?(name)
public_send(name, image, *args)
else
image.send(name, *args)