Class: Olyx::Guardrails::Rails::JobReference
- Inherits:
-
Object
- Object
- Olyx::Guardrails::Rails::JobReference
- Defined in:
- lib/olyx/guardrails/rails/job_reference.rb
Overview
Validates and resolves an Active Job class reference.
Constant Summary collapse
- NAME =
/\A[A-Z]\w*(?:::[A-Z]\w*)*\z/
Instance Method Summary collapse
-
#initialize(job) ⇒ JobReference
constructor
A new instance of JobReference.
- #resolve ⇒ Object
Constructor Details
#initialize(job) ⇒ JobReference
Returns a new instance of JobReference.
12 13 14 |
# File 'lib/olyx/guardrails/rails/job_reference.rb', line 12 def initialize(job) @job = normalize(job) end |
Instance Method Details
#resolve ⇒ Object
16 17 18 19 20 21 |
# File 'lib/olyx/guardrails/rails/job_reference.rb', line 16 def resolve target = @job.is_a?(String) ? ConstantResolver.call(@job) : @job return target if target.respond_to?(:perform_later) raise ArgumentError, 'configured job must respond to perform_later' end |