Documentation
¶
Index ¶
- Variables
- func Convert[T any, R any](slice []T, f func(in T) R) []R
- func MarshalMetadata(md metadata.MD) (*structpb.Struct, error)
- func MetadataForRequest(req *Request) metadata.MD
- func NewClientConn(transport ClientTransport) grpc.ClientConnInterface
- func PeerForRequest(req *Request) *peer.Peer
- func TimeoutForRequest(req *Request) (time.Duration, bool, error)
- func UnmarshalMetadata(s *structpb.Struct) metadata.MD
- type ClientTransport
- type Request
- type Response
- type Server
- type TransportStream
- func (r *TransportStream) Method() string
- func (r *TransportStream) Response() (*Response, error)
- func (r *TransportStream) SendHeader(md metadata.MD) error
- func (r *TransportStream) SetHeader(md metadata.MD) error
- func (r *TransportStream) SetResponse(resp any) error
- func (r *TransportStream) SetStatus(st *status.Status)
- func (r *TransportStream) SetTrailer(md metadata.MD) error
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrIllegalHeaderWrite = status.Errorf(codes.Internal, "transport: SetHeader/SetTrailer called after headers were sent")
View Source
var ErrIllegalSendHeader = status.Errorf(codes.Internal, "transport: SendHeader called multiple times")
Functions ¶
func MetadataForRequest ¶
func NewClientConn ¶ added in v0.2.76
func NewClientConn(transport ClientTransport) grpc.ClientConnInterface
func PeerForRequest ¶
TODO(morgabra): The transport impl has to give this to us I suppose.
Types ¶
type ClientTransport ¶
func NewLambdaClientTransport ¶ added in v0.2.76
func NewLambdaClientTransport(ctx context.Context, client *lambda.Client, functionName string) (ClientTransport, error)
NewLambdaClientTransport returns a new client transport that invokes a lambda function.
type Request ¶
type Request struct {
// contains filtered or unexported fields
}
func NewRequest ¶
func (*Request) MarshalJSON ¶
func (*Request) UnmarshalJSON ¶
func (*Request) UnmarshalRequest ¶
type Response ¶
type Response struct {
// contains filtered or unexported fields
}
func ErrorResponse ¶
ErrorResponse converts a given error to a status.Status and returns a *pbtransport.Response. status.FromError(err) must unwrap a status.Status for this to work - all other errors are converted to grpc codes.Unknown errors.
func (*Response) MarshalJSON ¶
func (*Response) UnmarshalJSON ¶
func (*Response) UnmarshalResponse ¶
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
func NewServer ¶
func NewServer(unaryInterceptor grpc.UnaryServerInterceptor, ) *Server
func (*Server) RegisterService ¶
func (s *Server) RegisterService(sd *grpc.ServiceDesc, ss any)
RegisterService registers a service and its implementation to the gRPC server. This is lifted from grpc.Server.
type TransportStream ¶
type TransportStream struct {
// contains filtered or unexported fields
}
func NewTransportStream ¶
func NewTransportStream(method *grpc.MethodDesc) *TransportStream
func (*TransportStream) Method ¶
func (r *TransportStream) Method() string
func (*TransportStream) Response ¶
func (r *TransportStream) Response() (*Response, error)
func (*TransportStream) SendHeader ¶
func (r *TransportStream) SendHeader(md metadata.MD) error
func (*TransportStream) SetResponse ¶
func (r *TransportStream) SetResponse(resp any) error
func (*TransportStream) SetStatus ¶
func (r *TransportStream) SetStatus(st *status.Status)
func (*TransportStream) SetTrailer ¶
func (r *TransportStream) SetTrailer(md metadata.MD) error
Click to show internal directories.
Click to hide internal directories.