Sha256: f6d396ceee61a7b883542a378d5829e2456124b0bd3986062b17a3be1646f5c4

Contents?: true

Size: 829 Bytes

Versions: 2

Compression:

Stored size: 829 Bytes

Contents

# frozen_string_literal: true

require 'grpc_kit/status_codes'

module GrpcKit
  module Errors
    # https://github.com/grpc/grpc/blob/23b5b1a5a9c7084c5b64d4998ee15af0f77bd589/doc/statuscodes.md
    class BadStatus < StandardError
      def initialize(code, message)
        super("#{code} #{message}")
        @code = code
        @message = message
      end
    end

    class DeadlienExceeded < BadStatus
      def initialize(msg)
        super(
          GrpcKit::StatusCodes::DEADLINE_EXCEEDED,
          msg.to_s,
          # "Deadline expires before server returns status: #{msg}"
        )
      end
    end

    class Unimplemented < BadStatus
      def initialize(name)
        super(
          GrpcKit::StatusCodes::UNIMPLEMENTED,
          "Method not found at server: #{name}"
        )
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
grpc_kit-0.1.2 lib/grpc_kit/errors.rb
grpc_kit-0.1.1 lib/grpc_kit/errors.rb