class Stackify::ScheduleTask

Attributes

action[R]
attempts[R]
limit[R]

Public Class Methods

new(properties={}) click to toggle source
# File lib/stackify/schedule_task.rb, line 6
def initialize properties={}, &action
  @limit = properties[:limit] || nil
  @attempts = properties[:attempts] || 3
  @success_condition = properties[:success_condition] || lambda{ |_result| true }
  @action = action
end

Public Instance Methods

execute!() click to toggle source
# File lib/stackify/schedule_task.rb, line 13
def execute!
  @action.call
end
success?(result_of_task_execution) click to toggle source
# File lib/stackify/schedule_task.rb, line 17
def success? result_of_task_execution
  @success_condition.call result_of_task_execution
end