Sha256: f96dba84ca67a4395a56f08089761dd0a48fc03085038c2620ae90fbefb12927

Contents?: true

Size: 1.43 KB

Versions: 3

Compression:

Stored size: 1.43 KB

Contents

require "ruby-progressbar"
require "ruby-progressbar/outputs/null"
require "map_reduce"
require "redis"

require_relative "kraps/version"
require_relative "kraps/drivers"
require_relative "kraps/actions"
require_relative "kraps/parallelizer"
require_relative "kraps/hash_partitioner"
require_relative "kraps/redis_queue"
require_relative "kraps/temp_path"
require_relative "kraps/temp_paths"
require_relative "kraps/timeout_queue"
require_relative "kraps/interval"
require_relative "kraps/job"
require_relative "kraps/job_resolver"
require_relative "kraps/runner"
require_relative "kraps/step"
require_relative "kraps/frame"
require_relative "kraps/worker"
require_relative "kraps/downloader"

module Kraps
  class Error < StandardError; end
  class InvalidAction < Error; end
  class InvalidStep < Error; end
  class JobStopped < Error; end
  class IncompatibleFrame < Error; end

  def self.configure(driver:, redis: Redis.new, namespace: nil, job_ttl: 4 * 24 * 60 * 60, show_progress: true, enqueuer: ->(worker, json) { worker.perform_async(json) })
    @driver = driver
    @redis = redis
    @namespace = namespace
    @job_ttl = job_ttl.to_i
    @show_progress = show_progress
    @enqueuer = enqueuer
  end

  def self.driver
    @driver
  end

  def self.redis
    @redis
  end

  def self.namespace
    @namespace
  end

  def self.job_ttl
    @job_ttl
  end

  def self.show_progress?
    @show_progress
  end

  def self.enqueuer
    @enqueuer
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
kraps-0.10.0 lib/kraps.rb
kraps-0.9.0 lib/kraps.rb
kraps-0.8.0 lib/kraps.rb