Class: MissionControl::Jobs::RecurringTask

Inherits:
Object
  • Object
show all
Includes:
ActiveModel::Model
Defined in:
app/models/mission_control/jobs/recurring_task.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(queue_adapter: ActiveJob::Base.queue_adapter, **kwargs) ⇒ RecurringTask

Returns a new instance of RecurringTask.



6
7
8
9
# File 'app/models/mission_control/jobs/recurring_task.rb', line 6

def initialize(queue_adapter: ActiveJob::Base.queue_adapter, **kwargs)
  @queue_adapter = queue_adapter
  super(**kwargs)
end

Instance Attribute Details

#argumentsObject

Returns the value of attribute arguments.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def arguments
  @arguments
end

#commandObject

Returns the value of attribute command.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def command
  @command
end

#idObject

Returns the value of attribute id.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def id
  @id
end

#job_class_nameObject

Returns the value of attribute job_class_name.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def job_class_name
  @job_class_name
end

#last_enqueued_atObject

Returns the value of attribute last_enqueued_at.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def last_enqueued_at
  @last_enqueued_at
end

#next_timeObject

Returns the value of attribute next_time.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def next_time
  @next_time
end

#priorityObject

Returns the value of attribute priority.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def priority
  @priority
end

#queue_nameObject

Returns the value of attribute queue_name.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def queue_name
  @queue_name
end

#scheduleObject

Returns the value of attribute schedule.



4
5
6
# File 'app/models/mission_control/jobs/recurring_task.rb', line 4

def schedule
  @schedule
end

Instance Method Details

#enqueueObject



15
16
17
# File 'app/models/mission_control/jobs/recurring_task.rb', line 15

def enqueue
  queue_adapter.enqueue_recurring_task(id)
end

#jobsObject



11
12
13
# File 'app/models/mission_control/jobs/recurring_task.rb', line 11

def jobs
  ActiveJob::JobsRelation.new(queue_adapter: queue_adapter).where(recurring_task_id: id)
end

#runnable?Boolean

Returns:

  • (Boolean)


19
20
21
# File 'app/models/mission_control/jobs/recurring_task.rb', line 19

def runnable?
  queue_adapter.can_enqueue_recurring_task?(id)
end