Module: ExecutionDeadline
- Defined in:
- lib/execution_deadline.rb,
lib/execution_deadline/errors.rb,
lib/execution_deadline/helpers.rb,
lib/execution_deadline/version.rb,
lib/execution_deadline/deadline.rb
Defined Under Namespace
Modules: Helpers Classes: Deadline, DeadlineError, DeadlineExceeded, OutOfTime
Constant Summary collapse
- VERSION =
'0.1.1'
Class Method Summary collapse
- .clear_deadline! ⇒ Object
- .current_deadline ⇒ Object
-
.set_deadline(expires_at:, raises: nil) ⇒ Boolean|Deadline
Returns false if a deadline is already set, and returns a deadline object if it was successfully set.
Class Method Details
.clear_deadline! ⇒ Object
11 12 13 |
# File 'lib/execution_deadline.rb', line 11 def self.clear_deadline! Thread.current[:deadline] = nil end |
.current_deadline ⇒ Object
7 8 9 |
# File 'lib/execution_deadline.rb', line 7 def self.current_deadline Thread.current[:deadline] end |
.set_deadline(expires_at:, raises: nil) ⇒ Boolean|Deadline
Returns false if a deadline is already set, and returns a deadline object if it was successfully set
19 20 21 22 |
# File 'lib/execution_deadline.rb', line 19 def self.set_deadline(expires_at:, raises: nil) !current_deadline && Thread.current[:deadline] = Deadline.new(expires_at: expires_at, raises: raises) end |