Akka.Interfaced.RequestHandlerBuilder.BuildGenericHandler C# (CSharp) Method

BuildGenericHandler() private static method

private static BuildGenericHandler ( Type targetType, Type invokePayloadType, Type returnPayloadType, MethodInfo method, FilterChain filterChain ) : RequestHandler
targetType System.Type
invokePayloadType System.Type
returnPayloadType System.Type
method System.Reflection.MethodInfo
filterChain FilterChain
return RequestHandler
        private static RequestHandler BuildGenericHandler(
            Type targetType, Type invokePayloadType, Type returnPayloadType, MethodInfo method, FilterChain filterChain)
        {
            var argTypes = invokePayloadType.GetGenericArguments();
            var genericReturnPayloadType = returnPayloadType?.MakeGenericType(argTypes);
            var genericMethod = method.MakeGenericMethod(argTypes.Skip(argTypes.Length - method.GetGenericArguments().Length).ToArray());
            return BuildHandler(targetType, invokePayloadType, genericReturnPayloadType, genericMethod, filterChain);
        }