Class: AsyncResponse::Builder

Inherits:
Object
  • Object
show all
Includes:
Helper
Defined in:
lib/async_response/builder.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Helper

#hashed_job_key, #job_type

Constructor Details

#initialize(worker_class, expires_at, job_key) ⇒ Builder

Returns a new instance of Builder.



5
6
7
8
9
# File 'lib/async_response/builder.rb', line 5

def initialize(worker_class, expires_at, job_key)
  @worker_class = worker_class
  @expires_at = expires_at
  @job_key = job_key
end

Instance Attribute Details

#expires_atObject (readonly)

Returns the value of attribute expires_at.



4
5
6
# File 'lib/async_response/builder.rb', line 4

def expires_at
  @expires_at
end

#job_keyObject (readonly)

Returns the value of attribute job_key.



4
5
6
# File 'lib/async_response/builder.rb', line 4

def job_key
  @job_key
end

#worker_classObject (readonly)

Returns the value of attribute worker_class.



4
5
6
# File 'lib/async_response/builder.rb', line 4

def worker_class
  @worker_class
end

Instance Method Details

#build(params) ⇒ Object



11
12
13
14
15
16
17
18
# File 'lib/async_response/builder.rb', line 11

def build(params)
  job = async_job || create_job(params)
  response = respond_with(job)
  # Set job as shown, needs to display at least once
  # before we discount it due to expiry
  job.shown! if job.finished?
  response
end