/// <summary>
 /// Executed before the Function method being executed.
 /// Throwing exceptions can terminate the Function execution and response the invocation failure.
 /// </summary>
 public abstract Task FilterAsync(InvocationContext invocationContext, CancellationToken cancellationToken);
 public SignalRTriggerValueProvider(ParameterInfo parameter, InvocationContext value)
 {
     _parameter = parameter ?? throw new ArgumentNullException(nameof(parameter));
     _value     = value ?? throw new ArgumentNullException(nameof(value));
 }
 /// <summary>
 /// Get the user group manager of this hub.
 /// </summary>
 public static Task <IUserGroupManager> GetUserGroupManagerAsync(this InvocationContext invocationContext)
 {
     return(Task.FromResult(invocationContext.HubContext.UserGroups as IUserGroupManager));
 }
 /// <summary>
 /// Get the client manager of this hub.
 /// </summary>
 public static ClientManager GetClientManager(this InvocationContext invocationContext)
 {
     return(invocationContext.HubContext.ClientManager);
 }
 /// <summary>
 /// Gets an object that can be used to invoke methods on the clients connected to this hub.
 /// </summary>
 public static Task <IHubClients> GetClientsAsync(this InvocationContext invocationContext)
 {
     return(Task.FromResult(invocationContext.HubContext.Clients));
 }