Sha256: f85f59fa40eccc38d1fa2aba0939d9064e063581444e71cc02890380689a3626

Contents?: true

Size: 621 Bytes

Versions: 10

Compression:

Stored size: 621 Bytes

Contents

module Kuroko2
  module Workflow
    module Task
      class Sleep < Base
        def execute
          if (time = token.context['SLEEP'])
            if Time.current.to_i > time
              token.context.delete('SLEEP')

              :next
            else
              :pass
            end
          else
            token.context['SLEEP'] = Time.current.to_i + option.to_i

            :pass
          end
        end

        def validate
          unless /^\d+$/ === option
            raise Workflow::AssertionError, "A value of sleep should be a number."
          end
        end
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
kuroko2-0.4.2 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.4.1 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.4.0 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.3.4 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.3.3 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.3.2 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.3.1 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.3.0 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.2.3 lib/autoload/kuroko2/workflow/task/sleep.rb
kuroko2-0.2.2 lib/autoload/kuroko2/workflow/task/sleep.rb