Sha256: 547f6c6fd35726a8c9883b630ceffaf445e92f77d5a5ad93463a95be8080bc4a

Contents?: true

Size: 804 Bytes

Versions: 61

Compression:

Stored size: 804 Bytes

Contents

# frozen_string_literal: true

module SidekiqUniqueJobs
  class Lock
    #
    # Validates the sidekiq options for the Sidekiq client process
    #
    # @author Mikael Henriksson <mikael@mhenrixon.com>
    #
    class ClientValidator
      #
      # @return [Array<Symbol>] a collection of invalid conflict resolutions
      INVALID_ON_CONFLICTS = [:raise, :reject, :reschedule].freeze

      #
      # Validates the sidekiq options for the Sidekiq client process
      #
      #
      def self.validate(lock_config)
        on_conflict = lock_config.on_client_conflict
        return lock_config unless INVALID_ON_CONFLICTS.include?(on_conflict)

        lock_config.errors[:on_client_conflict] = "#{on_conflict} is incompatible with the client process"
        lock_config
      end
    end
  end
end

Version data entries

61 entries across 61 versions & 1 rubygems

Version Path
sidekiq-unique-jobs-8.0.10 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.33 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.32 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.9 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.8 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.7 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.6 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.31 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.5 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.4 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.30 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.3 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.2 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.1 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-8.0.0 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.29 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.28 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.27 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.26 lib/sidekiq_unique_jobs/lock/client_validator.rb
sidekiq-unique-jobs-7.1.25 lib/sidekiq_unique_jobs/lock/client_validator.rb