Class: Jbr::Job

Inherits:
Resource show all
Defined in:
lib/jbr/job.rb

Constant Summary collapse

FIND =
<<~GRAPHQL.freeze
  query($id: EncodedId!) {
    job(id: $id) { id quote { id } startAt completedAt }
  }
GRAPHQL

Instance Attribute Summary collapse

Attributes inherited from Resource

#id

Instance Method Summary collapse

Methods inherited from Resource

#initialize

Constructor Details

This class inherits a constructor from Jbr::Resource

Instance Attribute Details

#quote_idObject (readonly)

Returns the value of attribute quote_id.



9
10
11
# File 'lib/jbr/job.rb', line 9

def quote_id
  @quote_id
end

Instance Method Details

#completed_atTime

Returns the job completed time.

Returns:

  • (Time)

    the job completed time



28
29
30
# File 'lib/jbr/job.rb', line 28

def completed_at
  Time.iso8601(@completed_at) if @completed_at
end

#find(id) ⇒ Object



11
12
13
14
15
16
17
18
19
20
# File 'lib/jbr/job.rb', line 11

def find(id)
  output = @oauth.query FIND, variables: { id: id  }
  return unless job = output['job']

  @id = job['id']
  @quote_id = job.dig 'quote', 'id'
  @scheduled_at = job['startAt']
  @completed_at = job['completedAt']
  self
end

#scheduled_atTime

Returns the job scheduled time.

Returns:

  • (Time)

    the job scheduled time



23
24
25
# File 'lib/jbr/job.rb', line 23

def scheduled_at
  Time.iso8601(@scheduled_at) if @scheduled_at
end