Sha256: 76fe4f31eb5431c79e95624c316aa0f6e556bd8cdef528871bf2ee19333110ad

Contents?: true

Size: 1.01 KB

Versions: 3

Compression:

Stored size: 1.01 KB

Contents

module Attached
  module Processor
    class Base

      attr_accessor :file
      attr_accessor :options
      attr_accessor :attachment

      # Create and run a processor.
      #
      # Parameters:
      #
      # * file       - The file to be processed.
      # * options    - The options to be applied to the processing.
      # * attachment - The attachment the processor is being run for.

      def self.process(file, options = {}, attachment = nil)
        new(file, options, attachment).process
      end

      # Create a processor.
      #
      # Parameters:
      #
      # * file       - The file to be processed.
      # * options    - The options to be applied to the processing.
      # * attachment - The attachment the processor is being run for.

      def initialize(file, options = {}, attachment = nil)
        @file = file
        @options = options
        @attachment = attachment
      end

      # Run the processor.

      def process
        raise NotImplementedError.new
      end

    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
attached-1.0.7 lib/attached/processor/base.rb
attached-1.0.6 lib/attached/processor/base.rb
attached-1.0.5 lib/attached/processor/base.rb