Documentation
¶
Index ¶
- func LoggingInterceptor(ctx context.Context, req any, info *grpc.UnaryServerInfo, ...) (any, error)
- func NewGRPCServer(beadsServer *BeadsServer) *grpc.Server
- func RecoveryInterceptor(ctx context.Context, req any, info *grpc.UnaryServerInfo, ...) (resp any, err error)
- type BeadsServer
- func (s *BeadsServer) AddComment(ctx context.Context, req *beadsv1.AddCommentRequest) (*beadsv1.AddCommentResponse, error)
- func (s *BeadsServer) AddDependency(ctx context.Context, req *beadsv1.AddDependencyRequest) (*beadsv1.AddDependencyResponse, error)
- func (s *BeadsServer) AddLabel(ctx context.Context, req *beadsv1.AddLabelRequest) (*beadsv1.AddLabelResponse, error)
- func (s *BeadsServer) CloseBead(ctx context.Context, req *beadsv1.CloseBeadRequest) (*beadsv1.CloseBeadResponse, error)
- func (s *BeadsServer) CreateBead(ctx context.Context, req *beadsv1.CreateBeadRequest) (*beadsv1.CreateBeadResponse, error)
- func (s *BeadsServer) DeleteBead(ctx context.Context, req *beadsv1.DeleteBeadRequest) (*beadsv1.DeleteBeadResponse, error)
- func (s *BeadsServer) DeleteConfig(ctx context.Context, req *beadsv1.DeleteConfigRequest) (*beadsv1.DeleteConfigResponse, error)
- func (s *BeadsServer) GetBead(ctx context.Context, req *beadsv1.GetBeadRequest) (*beadsv1.GetBeadResponse, error)
- func (s *BeadsServer) GetComments(ctx context.Context, req *beadsv1.GetCommentsRequest) (*beadsv1.GetCommentsResponse, error)
- func (s *BeadsServer) GetConfig(ctx context.Context, req *beadsv1.GetConfigRequest) (*beadsv1.GetConfigResponse, error)
- func (s *BeadsServer) GetDependencies(ctx context.Context, req *beadsv1.GetDependenciesRequest) (*beadsv1.GetDependenciesResponse, error)
- func (s *BeadsServer) GetEvents(ctx context.Context, req *beadsv1.GetEventsRequest) (*beadsv1.GetEventsResponse, error)
- func (s *BeadsServer) GetLabels(ctx context.Context, req *beadsv1.GetLabelsRequest) (*beadsv1.GetLabelsResponse, error)
- func (s *BeadsServer) Health(_ context.Context, _ *beadsv1.HealthRequest) (*beadsv1.HealthResponse, error)
- func (s *BeadsServer) ListBeads(ctx context.Context, req *beadsv1.ListBeadsRequest) (*beadsv1.ListBeadsResponse, error)
- func (s *BeadsServer) ListConfigs(ctx context.Context, req *beadsv1.ListConfigsRequest) (*beadsv1.ListConfigsResponse, error)
- func (s *BeadsServer) NewHTTPHandler() http.Handler
- func (s *BeadsServer) RemoveDependency(ctx context.Context, req *beadsv1.RemoveDependencyRequest) (*beadsv1.RemoveDependencyResponse, error)
- func (s *BeadsServer) RemoveLabel(ctx context.Context, req *beadsv1.RemoveLabelRequest) (*beadsv1.RemoveLabelResponse, error)
- func (s *BeadsServer) SetConfig(ctx context.Context, req *beadsv1.SetConfigRequest) (*beadsv1.SetConfigResponse, error)
- func (s *BeadsServer) UpdateBead(ctx context.Context, req *beadsv1.UpdateBeadRequest) (*beadsv1.UpdateBeadResponse, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func LoggingInterceptor ¶
func LoggingInterceptor( ctx context.Context, req any, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler, ) (any, error)
LoggingInterceptor logs the method name, duration, and error (if any) for every unary RPC call.
func NewGRPCServer ¶
func NewGRPCServer(beadsServer *BeadsServer) *grpc.Server
NewGRPCServer creates a gRPC server with standard interceptors, registers the BeadsService, reflection, and returns the server ready to serve.
func RecoveryInterceptor ¶
func RecoveryInterceptor( ctx context.Context, req any, info *grpc.UnaryServerInfo, handler grpc.UnaryHandler, ) (resp any, err error)
RecoveryInterceptor catches panics in downstream handlers, logs the stack trace, and returns a codes.Internal error instead of crashing the server.
Types ¶
type BeadsServer ¶
type BeadsServer struct {
beadsv1.UnimplementedBeadsServiceServer
// contains filtered or unexported fields
}
BeadsServer implements the beadsv1.BeadsServiceServer interface.
func NewBeadsServer ¶
func NewBeadsServer(s store.Store, p events.Publisher) *BeadsServer
NewBeadsServer returns a new BeadsServer backed by the given store and publisher.
func (*BeadsServer) AddComment ¶
func (s *BeadsServer) AddComment(ctx context.Context, req *beadsv1.AddCommentRequest) (*beadsv1.AddCommentResponse, error)
AddComment adds a comment to a bead.
func (*BeadsServer) AddDependency ¶
func (s *BeadsServer) AddDependency(ctx context.Context, req *beadsv1.AddDependencyRequest) (*beadsv1.AddDependencyResponse, error)
AddDependency creates a dependency between two beads.
func (*BeadsServer) AddLabel ¶
func (s *BeadsServer) AddLabel(ctx context.Context, req *beadsv1.AddLabelRequest) (*beadsv1.AddLabelResponse, error)
AddLabel adds a label to a bead.
func (*BeadsServer) CloseBead ¶
func (s *BeadsServer) CloseBead(ctx context.Context, req *beadsv1.CloseBeadRequest) (*beadsv1.CloseBeadResponse, error)
CloseBead marks a bead as closed.
func (*BeadsServer) CreateBead ¶
func (s *BeadsServer) CreateBead(ctx context.Context, req *beadsv1.CreateBeadRequest) (*beadsv1.CreateBeadResponse, error)
CreateBead validates the request, persists a new bead, publishes a BeadCreated event, and returns the full bead.
func (*BeadsServer) DeleteBead ¶
func (s *BeadsServer) DeleteBead(ctx context.Context, req *beadsv1.DeleteBeadRequest) (*beadsv1.DeleteBeadResponse, error)
DeleteBead removes a bead by ID.
func (*BeadsServer) DeleteConfig ¶
func (s *BeadsServer) DeleteConfig(ctx context.Context, req *beadsv1.DeleteConfigRequest) (*beadsv1.DeleteConfigResponse, error)
DeleteConfig removes a config by key.
func (*BeadsServer) GetBead ¶
func (s *BeadsServer) GetBead(ctx context.Context, req *beadsv1.GetBeadRequest) (*beadsv1.GetBeadResponse, error)
GetBead retrieves a single bead by ID.
func (*BeadsServer) GetComments ¶
func (s *BeadsServer) GetComments(ctx context.Context, req *beadsv1.GetCommentsRequest) (*beadsv1.GetCommentsResponse, error)
GetComments returns all comments for a bead.
func (*BeadsServer) GetConfig ¶
func (s *BeadsServer) GetConfig(ctx context.Context, req *beadsv1.GetConfigRequest) (*beadsv1.GetConfigResponse, error)
GetConfig retrieves a config by key.
func (*BeadsServer) GetDependencies ¶
func (s *BeadsServer) GetDependencies(ctx context.Context, req *beadsv1.GetDependenciesRequest) (*beadsv1.GetDependenciesResponse, error)
GetDependencies returns all dependencies for a bead.
func (*BeadsServer) GetEvents ¶
func (s *BeadsServer) GetEvents(ctx context.Context, req *beadsv1.GetEventsRequest) (*beadsv1.GetEventsResponse, error)
GetEvents returns all persisted events for a bead.
func (*BeadsServer) GetLabels ¶
func (s *BeadsServer) GetLabels(ctx context.Context, req *beadsv1.GetLabelsRequest) (*beadsv1.GetLabelsResponse, error)
GetLabels returns all labels for a bead.
func (*BeadsServer) Health ¶
func (s *BeadsServer) Health(_ context.Context, _ *beadsv1.HealthRequest) (*beadsv1.HealthResponse, error)
Health returns the service health status.
func (*BeadsServer) ListBeads ¶
func (s *BeadsServer) ListBeads(ctx context.Context, req *beadsv1.ListBeadsRequest) (*beadsv1.ListBeadsResponse, error)
ListBeads returns a filtered, paginated list of beads.
func (*BeadsServer) ListConfigs ¶
func (s *BeadsServer) ListConfigs(ctx context.Context, req *beadsv1.ListConfigsRequest) (*beadsv1.ListConfigsResponse, error)
ListConfigs returns configs matching a namespace prefix, merging in any builtin defaults that haven't been overridden by user-defined configs.
func (*BeadsServer) NewHTTPHandler ¶
func (s *BeadsServer) NewHTTPHandler() http.Handler
NewHTTPHandler returns an http.Handler with all routes registered.
func (*BeadsServer) RemoveDependency ¶
func (s *BeadsServer) RemoveDependency(ctx context.Context, req *beadsv1.RemoveDependencyRequest) (*beadsv1.RemoveDependencyResponse, error)
RemoveDependency removes a dependency between two beads.
func (*BeadsServer) RemoveLabel ¶
func (s *BeadsServer) RemoveLabel(ctx context.Context, req *beadsv1.RemoveLabelRequest) (*beadsv1.RemoveLabelResponse, error)
RemoveLabel removes a label from a bead.
func (*BeadsServer) SetConfig ¶
func (s *BeadsServer) SetConfig(ctx context.Context, req *beadsv1.SetConfigRequest) (*beadsv1.SetConfigResponse, error)
SetConfig creates or updates a config entry.
func (*BeadsServer) UpdateBead ¶
func (s *BeadsServer) UpdateBead(ctx context.Context, req *beadsv1.UpdateBeadRequest) (*beadsv1.UpdateBeadResponse, error)
UpdateBead applies partial updates to an existing bead.