Class: Qless::RecurringJob

Inherits:
BaseJob
  • Object
show all
Defined in:
lib/qless/job.rb

Instance Attribute Summary collapse

Attributes inherited from BaseJob

#client

Instance Method Summary collapse

Methods inherited from BaseJob

#klass, #queue

Constructor Details

#initialize(client, atts) ⇒ RecurringJob

Returns a new instance of RecurringJob.



313
314
315
316
317
318
319
320
321
322
# File 'lib/qless/job.rb', line 313

def initialize(client, atts)
  super(client, atts.fetch('jid'))
  %w{jid data priority tags retries interval count}.each do |att|
    self.instance_variable_set("@#{att}".to_sym, atts.fetch(att))
  end

  @klass_name  = atts.fetch('klass')
  @queue_name  = atts.fetch('queue')
  @tags        = [] if @tags == {}
end

Instance Attribute Details

#countObject (readonly)

Returns the value of attribute count.



311
312
313
# File 'lib/qless/job.rb', line 311

def count
  @count
end

#dataObject

Returns the value of attribute data.



311
312
313
# File 'lib/qless/job.rb', line 311

def data
  @data
end

#intervalObject

Returns the value of attribute interval.



311
312
313
# File 'lib/qless/job.rb', line 311

def interval
  @interval
end

#jidObject (readonly)

Returns the value of attribute jid.



311
312
313
# File 'lib/qless/job.rb', line 311

def jid
  @jid
end

#klass_nameObject (readonly)

Returns the value of attribute klass_name.



311
312
313
# File 'lib/qless/job.rb', line 311

def klass_name
  @klass_name
end

#priorityObject

Returns the value of attribute priority.



311
312
313
# File 'lib/qless/job.rb', line 311

def priority
  @priority
end

#queue_nameObject (readonly)

Returns the value of attribute queue_name.



311
312
313
# File 'lib/qless/job.rb', line 311

def queue_name
  @queue_name
end

#retriesObject

Returns the value of attribute retries.



311
312
313
# File 'lib/qless/job.rb', line 311

def retries
  @retries
end

#tagsObject (readonly)

Returns the value of attribute tags.



311
312
313
# File 'lib/qless/job.rb', line 311

def tags
  @tags
end

Instance Method Details

#cancelObject



354
355
356
# File 'lib/qless/job.rb', line 354

def cancel
  @client._recur.call([], ['off', @jid])
end

#klass=(value) ⇒ Object



344
345
346
347
# File 'lib/qless/job.rb', line 344

def klass=(value)
  @client._recur.call([], ['update', @jid, 'klass', value.to_s])
  @klass_name = value.to_s
end

#move(queue) ⇒ Object



349
350
351
352
# File 'lib/qless/job.rb', line 349

def move(queue)
  @client._recur.call([], ['update', @jid, 'queue', queue])
  @queue_name = queue
end

#tag(*tags) ⇒ Object



358
359
360
# File 'lib/qless/job.rb', line 358

def tag(*tags)
  @client._recur.call([], ['tag', @jid] + tags)
end

#untag(*tags) ⇒ Object



362
363
364
# File 'lib/qless/job.rb', line 362

def untag(*tags)
  @client._recur.call([], ['untag', @jid] + tags)
end