github.com/livekit/protocol@v1.39.3/infra/link_grpc.pb.go (about)

     1  // Copyright 2023 LiveKit, Inc.
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // Code generated by protoc-gen-go-grpc. DO NOT EDIT.
    16  // versions:
    17  // - protoc-gen-go-grpc v1.5.1
    18  // - protoc             v4.23.4
    19  // source: infra/link.proto
    20  
    21  package infra
    22  
    23  import (
    24  	context "context"
    25  	grpc "google.golang.org/grpc"
    26  	codes "google.golang.org/grpc/codes"
    27  	status "google.golang.org/grpc/status"
    28  )
    29  
    30  // This is a compile-time assertion to ensure that this generated file
    31  // is compatible with the grpc package it is being compiled against.
    32  // Requires gRPC-Go v1.64.0 or later.
    33  const _ = grpc.SupportPackageIsVersion9
    34  
    35  const (
    36  	Link_WatchLocalLinks_FullMethodName   = "/rpc.Link/WatchLocalLinks"
    37  	Link_SimulateLinkState_FullMethodName = "/rpc.Link/SimulateLinkState"
    38  )
    39  
    40  // LinkClient is the client API for Link service.
    41  //
    42  // For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
    43  type LinkClient interface {
    44  	WatchLocalLinks(ctx context.Context, in *WatchLocalLinksRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[WatchLocalLinksResponse], error)
    45  	SimulateLinkState(ctx context.Context, in *SimulateLinkStateRequest, opts ...grpc.CallOption) (*SimulateLinkStateResponse, error)
    46  }
    47  
    48  type linkClient struct {
    49  	cc grpc.ClientConnInterface
    50  }
    51  
    52  func NewLinkClient(cc grpc.ClientConnInterface) LinkClient {
    53  	return &linkClient{cc}
    54  }
    55  
    56  func (c *linkClient) WatchLocalLinks(ctx context.Context, in *WatchLocalLinksRequest, opts ...grpc.CallOption) (grpc.ServerStreamingClient[WatchLocalLinksResponse], error) {
    57  	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
    58  	stream, err := c.cc.NewStream(ctx, &Link_ServiceDesc.Streams[0], Link_WatchLocalLinks_FullMethodName, cOpts...)
    59  	if err != nil {
    60  		return nil, err
    61  	}
    62  	x := &grpc.GenericClientStream[WatchLocalLinksRequest, WatchLocalLinksResponse]{ClientStream: stream}
    63  	if err := x.ClientStream.SendMsg(in); err != nil {
    64  		return nil, err
    65  	}
    66  	if err := x.ClientStream.CloseSend(); err != nil {
    67  		return nil, err
    68  	}
    69  	return x, nil
    70  }
    71  
    72  // This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
    73  type Link_WatchLocalLinksClient = grpc.ServerStreamingClient[WatchLocalLinksResponse]
    74  
    75  func (c *linkClient) SimulateLinkState(ctx context.Context, in *SimulateLinkStateRequest, opts ...grpc.CallOption) (*SimulateLinkStateResponse, error) {
    76  	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
    77  	out := new(SimulateLinkStateResponse)
    78  	err := c.cc.Invoke(ctx, Link_SimulateLinkState_FullMethodName, in, out, cOpts...)
    79  	if err != nil {
    80  		return nil, err
    81  	}
    82  	return out, nil
    83  }
    84  
    85  // LinkServer is the server API for Link service.
    86  // All implementations must embed UnimplementedLinkServer
    87  // for forward compatibility.
    88  type LinkServer interface {
    89  	WatchLocalLinks(*WatchLocalLinksRequest, grpc.ServerStreamingServer[WatchLocalLinksResponse]) error
    90  	SimulateLinkState(context.Context, *SimulateLinkStateRequest) (*SimulateLinkStateResponse, error)
    91  	mustEmbedUnimplementedLinkServer()
    92  }
    93  
    94  // UnimplementedLinkServer must be embedded to have
    95  // forward compatible implementations.
    96  //
    97  // NOTE: this should be embedded by value instead of pointer to avoid a nil
    98  // pointer dereference when methods are called.
    99  type UnimplementedLinkServer struct{}
   100  
   101  func (UnimplementedLinkServer) WatchLocalLinks(*WatchLocalLinksRequest, grpc.ServerStreamingServer[WatchLocalLinksResponse]) error {
   102  	return status.Errorf(codes.Unimplemented, "method WatchLocalLinks not implemented")
   103  }
   104  func (UnimplementedLinkServer) SimulateLinkState(context.Context, *SimulateLinkStateRequest) (*SimulateLinkStateResponse, error) {
   105  	return nil, status.Errorf(codes.Unimplemented, "method SimulateLinkState not implemented")
   106  }
   107  func (UnimplementedLinkServer) mustEmbedUnimplementedLinkServer() {}
   108  func (UnimplementedLinkServer) testEmbeddedByValue()              {}
   109  
   110  // UnsafeLinkServer may be embedded to opt out of forward compatibility for this service.
   111  // Use of this interface is not recommended, as added methods to LinkServer will
   112  // result in compilation errors.
   113  type UnsafeLinkServer interface {
   114  	mustEmbedUnimplementedLinkServer()
   115  }
   116  
   117  func RegisterLinkServer(s grpc.ServiceRegistrar, srv LinkServer) {
   118  	// If the following call pancis, it indicates UnimplementedLinkServer was
   119  	// embedded by pointer and is nil.  This will cause panics if an
   120  	// unimplemented method is ever invoked, so we test this at initialization
   121  	// time to prevent it from happening at runtime later due to I/O.
   122  	if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
   123  		t.testEmbeddedByValue()
   124  	}
   125  	s.RegisterService(&Link_ServiceDesc, srv)
   126  }
   127  
   128  func _Link_WatchLocalLinks_Handler(srv interface{}, stream grpc.ServerStream) error {
   129  	m := new(WatchLocalLinksRequest)
   130  	if err := stream.RecvMsg(m); err != nil {
   131  		return err
   132  	}
   133  	return srv.(LinkServer).WatchLocalLinks(m, &grpc.GenericServerStream[WatchLocalLinksRequest, WatchLocalLinksResponse]{ServerStream: stream})
   134  }
   135  
   136  // This type alias is provided for backwards compatibility with existing code that references the prior non-generic stream type by name.
   137  type Link_WatchLocalLinksServer = grpc.ServerStreamingServer[WatchLocalLinksResponse]
   138  
   139  func _Link_SimulateLinkState_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
   140  	in := new(SimulateLinkStateRequest)
   141  	if err := dec(in); err != nil {
   142  		return nil, err
   143  	}
   144  	if interceptor == nil {
   145  		return srv.(LinkServer).SimulateLinkState(ctx, in)
   146  	}
   147  	info := &grpc.UnaryServerInfo{
   148  		Server:     srv,
   149  		FullMethod: Link_SimulateLinkState_FullMethodName,
   150  	}
   151  	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
   152  		return srv.(LinkServer).SimulateLinkState(ctx, req.(*SimulateLinkStateRequest))
   153  	}
   154  	return interceptor(ctx, in, info, handler)
   155  }
   156  
   157  // Link_ServiceDesc is the grpc.ServiceDesc for Link service.
   158  // It's only intended for direct use with grpc.RegisterService,
   159  // and not to be introspected or modified (even as a copy)
   160  var Link_ServiceDesc = grpc.ServiceDesc{
   161  	ServiceName: "rpc.Link",
   162  	HandlerType: (*LinkServer)(nil),
   163  	Methods: []grpc.MethodDesc{
   164  		{
   165  			MethodName: "SimulateLinkState",
   166  			Handler:    _Link_SimulateLinkState_Handler,
   167  		},
   168  	},
   169  	Streams: []grpc.StreamDesc{
   170  		{
   171  			StreamName:    "WatchLocalLinks",
   172  			Handler:       _Link_WatchLocalLinks_Handler,
   173  			ServerStreams: true,
   174  		},
   175  	},
   176  	Metadata: "infra/link.proto",
   177  }