Documentation
¶
Overview ¶
Package grpcfixture is the service the gRPC binding's integration tests run: a notes service served on a transport gRPC server behind the transport's auth interceptor and a transit logging interceptor, and the same implementation's unary methods bound as MCP operations behind the estate HTTP chain, under one controls controller. Tests call it both ways and compare (spec 0002 D10). It is evidence, not an example to copy.
Index ¶
Constants ¶
const ( ReaderKey = "reader-key" EditorKey = "editor-key" KeyHeader = "X-API-Key" KeyMetadata = "x-api-key" Path = "/mcp" )
The API keys both edges accept, and where each edge reads them.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Options ¶
type Options struct {
Logger *slog.Logger
ShutdownBudget time.Duration
// WaitTimeout is the bound Wait method's budget; zero keeps the default.
WaitTimeout time.Duration
}
Options configure one service instance.
type Service ¶
type Service struct {
Controller *controls.Controller
MCP *server.Server
GRPC transportgrpc.ServerSettings
HTTPAddr string
Entered chan struct{}
Deadlines chan time.Duration
Ended chan error
// contains filtered or unexported fields
}
Service is one running instance: the gRPC server's settings for a direct dial, the HTTP address for MCP, and channels that observe each Wait call from outside.
func (*Service) Dial ¶
func (s *Service) Dial(opts ...googlegrpc.DialOption) (*googlegrpc.ClientConn, error)
Dial connects a client to the gRPC server directly, as a service's own caller would.