Sha256: 1010c5821945d7f90251ed57fffe05975115bac84bec9a9dd2ce9f5cd310e7f1

Contents?: true

Size: 550 Bytes

Versions: 1

Compression:

Stored size: 550 Bytes

Contents

# frizen_string_literal: true

module MultiBackgroundJob
  module Workers
    module SharedClassMethods
      def perform_async(*args)
        build_worker.with_args(*args).push
      end

      def perform_in(interval, *args)
        build_worker.with_args(*args).at(interval).push
      end
      alias_method :perform_at, :perform_in

      protected

      def service_worker_options
        {}
      end

      def build_worker
        MultiBackgroundJob[self.name, **service_worker_options.merge(bg_worker_options)]
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
multi-background-job-0.1.0 lib/multi_background_job/workers/shared_class_methods.rb