class AWS::Flow::Core::BeginRescueEnsureWrapper
Ensures that {BeginRescueEnsure} isn’t exposed directly. This function is passed in when {#error_handler} is called, like this:
error_handler do |t| t.begin { "This is the begin" } t.rescue(Exception) { "This is the rescue" } t.ensure { trace << t.begin_task } end
In this example, t is a {BeginRescueEnsureWrapper} which passes the begin/rescue/ensure calls to the {BeginRescueEnsure} class itself.
@api private
Attributes
__context__[R]
Also has a few methods to ensure fiber-ness, such as get_heirs
and cancel.
beginRescueEnsure[RW]
Public Class Methods
new(block, begin_rescue_ensure)
click to toggle source
Creates a new ‘BeginRescueEnsureWrapper` instance.
@param block
*Required*. A code block to be called.
@param begin_rescue_ensure
The {BeginRescueEnsure} instance to wrap.
@api private
Calls superclass method
# File lib/aws/flow/begin_rescue_ensure.rb, line 332 def initialize(block, begin_rescue_ensure) @beginRescueEnsure = begin_rescue_ensure @__context__ = @beginRescueEnsure super() do begin block.call(self) ensure @__context__.parent.remove(self) end end end
Public Instance Methods
begin(&block)
click to toggle source
(see BeginRescueEnsure#begin
)
# File lib/aws/flow/begin_rescue_ensure.rb, line 368 def begin(&block) @beginRescueEnsure.begin(block) end
cancel(error_type)
click to toggle source
@api private
# File lib/aws/flow/begin_rescue_ensure.rb, line 352 def cancel(error_type) @beginRescueEnsure.parent.cancel(self) end
ensure(&block)
click to toggle source
(see BeginRescueEnsure#ensure
)
# File lib/aws/flow/begin_rescue_ensure.rb, line 371 def ensure(&block) @beginRescueEnsure.ensure(block) end
get_closest_containing_scope()
click to toggle source
Gets the parent of the {BeginRescueEnsure} instance held by this class. @api private
# File lib/aws/flow/begin_rescue_ensure.rb, line 363 def get_closest_containing_scope @beginRescueEnsure.parent end
get_heirs()
click to toggle source
@api private
# File lib/aws/flow/begin_rescue_ensure.rb, line 346 def get_heirs p "I am a BREWrapper" return end
is_daemon?()
click to toggle source
@api private
# File lib/aws/flow/begin_rescue_ensure.rb, line 357 def is_daemon? false end
rescue(*error_types, &block)
click to toggle source
(see BeginRescueEnsure#rescue
)
# File lib/aws/flow/begin_rescue_ensure.rb, line 374 def rescue(*error_types, &block) @beginRescueEnsure.rescue(error_types, block) end