Example #1
0
        private static IEnumerable <object> BuildParameters(
            MethodInfo methodInfo,
            IHttpApiRequestContext httpApiRequestContext,
            CancellationToken cancellationToken)
        {
            return(methodInfo
                   .GetParameters()
                   .Select(pi =>
            {
                if (pi.ParameterType == typeof(CancellationToken))
                {
                    return (object)cancellationToken;
                }
                if (pi.ParameterType == typeof(IHttpApiRequestContext))
                {
                    return (object)httpApiRequestContext;
                }
                if (pi.GetCustomAttribute <FromBodyAttribute>() != null)
                {
                    return httpApiRequestContext.BodyAs(pi.ParameterType);
                }

                throw new InvalidOperationException($"Unknown type '{pi.ParameterType}'");
            }));
        }
Example #2
0
 public Task <string> Ping(IHttpApiRequestContext httpApiRequestContext, CancellationToken cancellationToken)
 {
     return(Task.FromResult(""));
 }
Example #3
0
 public Task<string> Ping(IHttpApiRequestContext httpApiRequestContext, CancellationToken cancellationToken)
 {
     return Task.FromResult("");
 }