Class: SidekiqRobustJob::EnqueueConflictResolutionStrategy
- Inherits:
-
Object
- Object
- SidekiqRobustJob::EnqueueConflictResolutionStrategy
show all
- Defined in:
- lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb,
lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy/base.rb,
lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy/replace.rb,
lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy/drop_self.rb,
lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy/do_nothing.rb
Defined Under Namespace
Classes: Base, DoNothing, DropSelf, Replace, UnknownStrategyError
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
18
19
20
21
|
# File 'lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb', line 18
def initialize(jobs_repository:, clock:)
@jobs_repository = jobs_repository
@clock = clock
end
|
Class Method Details
.do_nothing ⇒ Object
3
4
5
|
# File 'lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb', line 3
def self.do_nothing
:do_nothing
end
|
.drop_self ⇒ Object
7
8
9
|
# File 'lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb', line 7
def self.drop_self
:drop_self
end
|
.replace ⇒ Object
11
12
13
|
# File 'lib/sidekiq_robust_job/enqueue_conflict_resolution_strategy.rb', line 11
def self.replace
:replace
end
|
Instance Method Details
#resolve(strategy) ⇒ Object
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# 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
|