public bool CanCreateInvocationDelegateFor(MethodInfo serviceMethod) { return serviceMethod.ReturnType == typeof(Task) && serviceMethod.IsAsyncCallable() && !serviceMethod.IsStatic && (serviceMethod.NumberOfParameters() == 1 || (serviceMethod.NumberOfParameters() == 2 && serviceMethod.TypeOfSecondParameter() == typeof(CancellationToken))); }
private static bool IsSingleParameterWithOptionalCancellationToken(MethodInfo method) { return method.NumberOfParameters() == 1 || (method.NumberOfParameters() == 2 && method.TypeOfSecondParameter() == typeof(CancellationToken)); }