module WebSocket::ExceptionHandler::ClassMethods
def rescue_method(method_name, options = {})
(**options)
-
:return
(Any
) -- Value that should be returned instead of raised error
Parameters:
-
options
(Hash
) -- Options for rescue -
method_name
(String
) -- Name of method that should be wrapped and rescued
def rescue_method(method_name, options = {}) define_method "#{method_name}_with_rescue" do |*args| begin send("#{method_name}_without_rescue", *args) rescue WebSocket::Error => e self.error = e.message.to_sym WebSocket.should_raise ? raise : options[:return] end end alias_method "#{method_name}_without_rescue", method_name alias_method method_name, "#{method_name}_with_rescue" end