Sha256: 7bb1f981542f4f6068cd01b847ededf3f2d9b2d07345cb605f3679f778d1ad35

Contents?: true

Size: 776 Bytes

Versions: 3

Compression:

Stored size: 776 Bytes

Contents

module Metacrunch
  class Job::Dsl
    require_relative "dsl/options"

    def initialize(job)
      @_job = job
    end

    def source(source)
      @_job.source = source
    end

    def destination(destination)
      @_job.destination = destination
    end

    def pre_process(callable)
      @_job.pre_process = callable
    end

    def post_process(callable)
      @_job.post_process = callable
    end

    def transformation(callable, buffer_size: nil, buffer: nil)
      @_job.add_transformation(callable, buffer_size: buffer_size, buffer: buffer)
    end

    def options(require_args: false, &block)
      if block_given?
        @_options = Options.new(require_args: require_args, &block).options
      else
        @_options ||= {}
      end
    end

  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
metacrunch-4.2.0 lib/metacrunch/job/dsl.rb
metacrunch-4.1.1 lib/metacrunch/job/dsl.rb
metacrunch-4.1.0 lib/metacrunch/job/dsl.rb