Module: Protocol::GRPC

Defined in:
lib/protocol/grpc.rb,
lib/protocol/grpc/call.rb,
lib/protocol/grpc/error.rb,
lib/protocol/grpc/header.rb,
lib/protocol/grpc/status.rb,
lib/protocol/grpc/methods.rb,
lib/protocol/grpc/version.rb,
lib/protocol/grpc/metadata.rb,
lib/protocol/grpc/interface.rb,
lib/protocol/grpc/middleware.rb,
lib/protocol/grpc/health_check.rb,
lib/protocol/grpc/body/readable.rb,
lib/protocol/grpc/body/writable.rb,
lib/protocol/grpc/header/status.rb,
lib/protocol/grpc/header/message.rb,
lib/protocol/grpc/header/timeout.rb,
lib/protocol/grpc/header/encoding.rb,
lib/protocol/grpc/body/readable_body.rb,
lib/protocol/grpc/body/writable_body.rb

Defined Under Namespace

Modules: Body, Header, HealthCheck, Metadata, Methods, Status Classes: Call, Cancelled, DeadlineExceeded, Error, Interface, Internal, InvalidArgument, Middleware, NotFound, Streaming, Unauthenticated, Unavailable

Constant Summary collapse

HEADER_POLICY =

Custom header policy for gRPC. Extends Protocol::HTTP::Headers::POLICY with gRPC-specific headers.

Protocol::HTTP::Headers::POLICY.merge(
	# Request headers:
	"grpc-timeout" => Header::Timeout,
	"grpc-encoding" => Header::Encoding,
	
	# Response headers:
	"grpc-status" => Header::Status,
	"grpc-message" => Header::Message
	# By default, all other headers follow standard HTTP policy, but gRPC allows most metadata to be sent as trailers.
).freeze
VERSION =
"0.12.0"