class PipeRpc::Client::Request::ErrorResponse
Public Class Methods
new(request, body)
click to toggle source
Calls superclass method
PipeRpc::ErrorResponse::new
# File lib/pipe_rpc/client_request_error_response.rb, line 5 def initialize(request, body) @request = request super body end
Public Instance Methods
to_result()
click to toggle source
# File lib/pipe_rpc/client_request_error_response.rb, line 10 def to_result case @code when -32601 then no_method_error when -32602 then argument_error when -32603 then internal_error when -32604 then no_server_error when -32605 then reflected_error else unknown_error end end
Private Instance Methods
argument_error()
click to toggle source
# File lib/pipe_rpc/client_request_error_response.rb, line 27 def argument_error ArgumentError.new(@data.fetch(:message)) end
internal_error()
click to toggle source
# File lib/pipe_rpc/client_request_error_response.rb, line 35 def internal_error InternalError.new(@data[:message]).tap do |error| error.set_backtrace(@data[:backtrace]) if error.respond_to? :set_backtrace end end
no_method_error()
click to toggle source
# File lib/pipe_rpc/client_request_error_response.rb, line 23 def no_method_error NoMethodError.new("undefined method `#{@data.fetch(:method)}' for #{@request.server}") end
no_server_error()
click to toggle source
# File lib/pipe_rpc/client_request_error_response.rb, line 31 def no_server_error NoServerError.new("undefined server `#{@request.server}'") end
reflected_error()
click to toggle source
# File lib/pipe_rpc/client_request_error_response.rb, line 41 def reflected_error ReflectedError.new(@data[:message]).tap do |error| error.set_backtrace(@data[:backtrace]) if error.respond_to? :set_backtrace end end
unknown_error()
click to toggle source
# File lib/pipe_rpc/client_request_error_response.rb, line 47 def unknown_error UnknownError.new(@data[:message]) end