aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/csharp/Grpc.Core/Internal/ServerCalls.cs
diff options
context:
space:
mode:
authorGravatar Jan Tattermusch <jtattermusch@google.com>2015-05-06 14:46:25 -0700
committerGravatar Jan Tattermusch <jtattermusch@google.com>2015-05-07 09:14:13 -0700
commitbdb1b4863bf0d03fb08f240677a7aa3726bb3f1c (patch)
treecd358e6dae00a6ecc58b4a9af26b765ee0a4c323 /src/csharp/Grpc.Core/Internal/ServerCalls.cs
parent9b9a877eae6406867ae1f03204066639b8a73593 (diff)
add a generic constraint for TRequest and TResponse to require a class
Diffstat (limited to 'src/csharp/Grpc.Core/Internal/ServerCalls.cs')
-rw-r--r--src/csharp/Grpc.Core/Internal/ServerCalls.cs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/csharp/Grpc.Core/Internal/ServerCalls.cs b/src/csharp/Grpc.Core/Internal/ServerCalls.cs
index 5c6b335c7f..81279678b9 100644
--- a/src/csharp/Grpc.Core/Internal/ServerCalls.cs
+++ b/src/csharp/Grpc.Core/Internal/ServerCalls.cs
@@ -41,21 +41,29 @@ namespace Grpc.Core.Internal
internal static class ServerCalls
{
public static IServerCallHandler UnaryCall<TRequest, TResponse>(Method<TRequest, TResponse> method, UnaryServerMethod<TRequest, TResponse> handler)
+ where TRequest : class
+ where TResponse : class
{
return new UnaryServerCallHandler<TRequest, TResponse>(method, handler);
}
public static IServerCallHandler ClientStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, ClientStreamingServerMethod<TRequest, TResponse> handler)
+ where TRequest : class
+ where TResponse : class
{
return new ClientStreamingServerCallHandler<TRequest, TResponse>(method, handler);
}
public static IServerCallHandler ServerStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, ServerStreamingServerMethod<TRequest, TResponse> handler)
+ where TRequest : class
+ where TResponse : class
{
return new ServerStreamingServerCallHandler<TRequest, TResponse>(method, handler);
}
public static IServerCallHandler DuplexStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, DuplexStreamingServerMethod<TRequest, TResponse> handler)
+ where TRequest : class
+ where TResponse : class
{
return new DuplexStreamingServerCallHandler<TRequest, TResponse>(method, handler);
}