Class: KueRuby::KueJob

Inherits:
Object
  • Object
show all
Defined in:
lib/kue_ruby.rb

Overview

Job record from Automattic Kue redis store

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeKueJob

Returns a new instance of KueJob.



72
73
74
75
# File 'lib/kue_ruby.rb', line 72

def initialize
  self.delay = 0
  super()
end

Instance Attribute Details

#backoffObject

Returns the value of attribute backoff.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def backoff
  @backoff
end

#created_atObject

Returns the value of attribute created_at.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def created_at
  @created_at
end

#dataObject

Returns the value of attribute data.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def data
  @data
end

#delayObject

Returns the value of attribute delay.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def delay
  @delay
end

#idObject

Returns the value of attribute id.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def id
  @id
end

#max_attemptsObject

Returns the value of attribute max_attempts.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def max_attempts
  @max_attempts
end

#priorityObject

Returns the value of attribute priority.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def priority
  @priority
end

#promote_atObject

Returns the value of attribute promote_at.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def promote_at
  @promote_at
end

#stateObject

Returns the value of attribute state.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def state
  @state
end

#typeObject

Returns the value of attribute type.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def type
  @type
end

#updated_atObject

Returns the value of attribute updated_at.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def updated_at
  @updated_at
end

#zidObject

Returns the value of attribute zid.



68
69
70
# File 'lib/kue_ruby.rb', line 68

def zid
  @zid
end

Instance Method Details

#save(redis) ⇒ KueJob

Save job data to redis kue

Parameters:

  • Redis

    redis instance

Returns:



82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/kue_ruby.rb', line 82

def save(redis)
  redis.hmset(
    "q:job:#{id}",
    'max_attempts', max_attempts.to_i,
    'backoff', backoff.to_json,
    'type', type,
    'created_at', (created_at.to_f * 1000).to_i,
    'updated_at', (Time.now.to_f * 1000).to_i,
    'promote_at', (Time.now.to_f * 1000).to_i + delay,
    'priority', priority.to_i,
    'data', data.to_json,
    'state', state
  )
  self
end