package infra
import (
context "context"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
)
const _ = grpc.SupportPackageIsVersion9
const (
Link_WatchLocalLinks_FullMethodName = "/rpc.Link/WatchLocalLinks"
Link_SimulateLinkState_FullMethodName = "/rpc.Link/SimulateLinkState"
)
type LinkClient interface {
WatchLocalLinks(ctx context.Context, in *WatchLocalLinksRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[WatchLocalLinksResponse], error)
SimulateLinkState(ctx context.Context, in *SimulateLinkStateRequest, opts ...grpc.CallOption) (*SimulateLinkStateResponse, error)
}
type linkClient struct {
cc grpc.ClientConnInterface
}
func NewLinkClient(cc grpc.ClientConnInterface) LinkClient {
return &linkClient{cc}
}
func (c *linkClient) WatchLocalLinks(ctx context.Context, in *WatchLocalLinksRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[WatchLocalLinksResponse], error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
stream, err := c.cc.NewStream(ctx, &Link_ServiceDesc.Streams[0], Link_WatchLocalLinks_FullMethodName, cOpts...)
if err != nil {
return nil, err
}
x := &grpc.GenericClientStream[WatchLocalLinksRequest, WatchLocalLinksResponse]{ClientStream: stream}
if err := x.ClientStream.SendMsg(in); err != nil {
return nil, err
}
if err := x.ClientStream.CloseSend(); err != nil {
return nil, err
}
return x, nil
}
type Link_WatchLocalLinksClient = grpc.ServerStreamingClient[WatchLocalLinksResponse]
func (c *linkClient) SimulateLinkState(ctx context.Context, in *SimulateLinkStateRequest, opts ...grpc.CallOption) (*SimulateLinkStateResponse, error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
out := new(SimulateLinkStateResponse)
err := c.cc.Invoke(ctx, Link_SimulateLinkState_FullMethodName, in, out, cOpts...)
if err != nil {
return nil, err
}
return out, nil
}
type LinkServer interface {
WatchLocalLinks(*WatchLocalLinksRequest, grpc.ServerStreamingServer[WatchLocalLinksResponse]) error
SimulateLinkState(context.Context, *SimulateLinkStateRequest) (*SimulateLinkStateResponse, error)
mustEmbedUnimplementedLinkServer()
}
type UnimplementedLinkServer struct{}
func (UnimplementedLinkServer) WatchLocalLinks(*WatchLocalLinksRequest, grpc.ServerStreamingServer[WatchLocalLinksResponse]) error {
return status.Error(codes.Unimplemented, "method WatchLocalLinks not implemented")
}
func (UnimplementedLinkServer) SimulateLinkState(context.Context, *SimulateLinkStateRequest) (*SimulateLinkStateResponse, error) {
return nil, status.Error(codes.Unimplemented, "method SimulateLinkState not implemented")
}
func (UnimplementedLinkServer) mustEmbedUnimplementedLinkServer() {}
func (UnimplementedLinkServer) testEmbeddedByValue() {}
type UnsafeLinkServer interface {
mustEmbedUnimplementedLinkServer()
}
func RegisterLinkServer(s grpc.ServiceRegistrar, srv LinkServer) {
if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
t.testEmbeddedByValue()
}
s.RegisterService(&Link_ServiceDesc, srv)
}
func _Link_WatchLocalLinks_Handler(srv interface{}, stream grpc.ServerStream) error {
m := new(WatchLocalLinksRequest)
if err := stream.RecvMsg(m); err != nil {
return err
}
return srv.(LinkServer).WatchLocalLinks(m, &grpc.GenericServerStream[WatchLocalLinksRequest, WatchLocalLinksResponse]{ServerStream: stream})
}
type Link_WatchLocalLinksServer = grpc.ServerStreamingServer[WatchLocalLinksResponse]
func _Link_SimulateLinkState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(SimulateLinkStateRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(LinkServer).SimulateLinkState(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: Link_SimulateLinkState_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(LinkServer).SimulateLinkState(ctx, req.(*SimulateLinkStateRequest))
}
return interceptor(ctx, in, info, handler)
}
var Link_ServiceDesc = grpc.ServiceDesc{
ServiceName: "rpc.Link",
HandlerType: (*LinkServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "SimulateLinkState",
Handler: _Link_SimulateLinkState_Handler,
},
},
Streams: []grpc.StreamDesc{
{
StreamName: "WatchLocalLinks",
Handler: _Link_WatchLocalLinks_Handler,
ServerStreams: true,
},
},
Metadata: "infra/link.proto",
}