using System;
using System.Collections.Generic;
using System.Text;
using Grpc.Core;
using Grpc.Core.Interceptors;
namespace Grpc.Extension.Client.Interceptors
{
///
/// 客户端拦截器
///
public class ClientInterceptor : Interceptor
{
///
/// 同步调用
///
///
///
///
///
///
///
public override TResponse BlockingUnaryCall(TRequest request, ClientInterceptorContext context, Interceptor.BlockingUnaryCallContinuation continuation)
{
return continuation(request, context);
}
///
/// 异步调用
///
///
///
///
///
///
///
public override AsyncUnaryCall AsyncUnaryCall(TRequest request, ClientInterceptorContext context, Interceptor.AsyncUnaryCallContinuation continuation)
{
return continuation(request, context);
}
///
/// 异步客户端流请求
///
///
///
///
///
///
public override AsyncClientStreamingCall AsyncClientStreamingCall(ClientInterceptorContext context, AsyncClientStreamingCallContinuation continuation)
{
return continuation(context);
}
///
/// 异步服务端流返回
///
///
///
///
///
///
///
public override AsyncServerStreamingCall AsyncServerStreamingCall(TRequest request, ClientInterceptorContext context, AsyncServerStreamingCallContinuation continuation)
{
return continuation(request, context);
}
///
/// 异步双向流
///
///
///
///
///
///
public override AsyncDuplexStreamingCall AsyncDuplexStreamingCall(ClientInterceptorContext context, AsyncDuplexStreamingCallContinuation continuation)
{
return continuation(context);
}
}
}