Sha256: 2edd2876cf8c06f90cb040a231969fbc22ca3a39275db5e24635d32df9b7444a
Contents?: true
Size: 490 Bytes
Versions: 25
Compression:
Stored size: 490 Bytes
Contents
module Stackify class ScheduleTask attr_reader :limit, :attempts, :action def initialize properties={}, &action @limit = properties[:limit] || nil @attempts = properties[:attempts] || 3 @success_condition = properties[:success_condition] || lambda{ |_result| true } @action = action end def execute! @action.call end def success? result_of_task_execution @success_condition.call result_of_task_execution end end end
Version data entries
25 entries across 25 versions & 1 rubygems