Class: Startback::Jobs::CreateJob

Inherits:
Operation
  • Object
show all
Defined in:
lib/startback/jobs/operation/create_job.rb

Instance Method Summary collapse

Constructor Details

#initialize(input) ⇒ CreateJob

Returns a new instance of CreateJob.



5
6
7
# File 'lib/startback/jobs/operation/create_job.rb', line 5

def initialize(input)
  super(System['Job.CreationRequest'].dress(input))
end

Instance Method Details

#callObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/startback/jobs/operation/create_job.rb', line 9

def call
  @job = Model::Job.full({
    id: SecureRandom.urlsafe_base64(16),
    opInput: {},
    opContext: context.to_h,
    opResult: nil,
    strategy: 'NotReady',
    strategyOptions: {},
    expiresAt: nil,
    hasFailed: false,
    refreshFreq: nil,
    refreshedAt: nil,
    consumeMax: nil,
    consumeCount: 0,
    createdAt: Time.now,
    createdBy: nil,
  }.merge(input))

  context.world.startback_jobs.insert(@job.to_data)

  @job
end