class Sequel::ConnectionGuard::Executor
Provides a DSL for accessing the database safely.
@example Safely accessing a database
DB.safe_execute do alive do |db| db[:users].all end dead do [] end end
@example Safely accessing a model
UserGuard.safe_execute do alive do |model| model.first! end # `dead` handler is optional end
@api private @since 0.1.0
Attributes
on_dead[R]
@api private @since 0.1.0
Public Instance Methods
alive(&block)
click to toggle source
@param block [Proc]
@api private @since 0.1.0
# File lib/sequel/extensions/connection_guard/executor.rb, line 38 def alive(&block) @on_alive = block end
dead(&block)
click to toggle source
@param block [Proc]
@api private @since 0.1.0
# File lib/sequel/extensions/connection_guard/executor.rb, line 46 def dead(&block) @on_dead = block end
on_alive()
click to toggle source
@raise [Sequel::ConnectionGuard::ConfigurationError] if an `alive` handler is missing
@api private @since 0.1.0
# File lib/sequel/extensions/connection_guard/executor.rb, line 54 def on_alive raise ConfigurationError, "`alive` handler is required for .safe_execute" if @on_alive.nil? @on_alive end