class SidekiqRobustJob::EnqueueConflictResolutionStrategy
Attributes
clock[R]
jobs_repository[R]
Public Class Methods
do_nothing()
click to toggle source
# File lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb, line 3 def self.do_nothing :do_nothing end
drop_self()
click to toggle source
# File lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb, line 7 def self.drop_self :drop_self end
new(jobs_repository:, clock:)
click to toggle source
# File lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb, line 18 def initialize(jobs_repository:, clock:) @jobs_repository = jobs_repository @clock = clock end
replace()
click to toggle source
# File lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb, line 11 def self.replace :replace end
Public Instance Methods
resolve(strategy)
click to toggle source
# File lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb, line 23 def resolve(strategy) case strategy.to_sym when SidekiqRobustJob::EnqueueConflictResolutionStrategy.do_nothing SidekiqRobustJob::EnqueueConflictResolutionStrategy::DoNothing.new( jobs_repository: jobs_repository, clock: clock ) when SidekiqRobustJob::EnqueueConflictResolutionStrategy.drop_self SidekiqRobustJob::EnqueueConflictResolutionStrategy::DropSelf.new( jobs_repository: jobs_repository, clock: clock ) when SidekiqRobustJob::EnqueueConflictResolutionStrategy.replace SidekiqRobustJob::EnqueueConflictResolutionStrategy::Replace.new( jobs_repository: jobs_repository, clock: clock ) else raise UnknownStrategyError.new(strategy) end end