public RootWebhookHandler(ILogger <IRootWebhookHandler> logger, IPingWebhookHandler pingHandler, IConfirmationWebhookHandler confirmationHandler, IConfigWebhookHandler configHandler, IInstallUpdateWebhookHandler installUpdateHandler, IEventWebhookHandler eventHandler, IOAuthWebhookHandler oauthHandler, IUninstallWebhookHandler uninstallHandler, ICryptoUtils cryptoUtils) { this.Logger = logger ?? throw new ArgumentNullException(nameof(logger)); _confirmationHandler = confirmationHandler ?? throw new ArgumentNullException(nameof(confirmationHandler)); _pingHandler = pingHandler ?? throw new ArgumentNullException(nameof(pingHandler)); _configHandler = configHandler ?? throw new ArgumentNullException(nameof(configHandler)); _installUpdateHandler = installUpdateHandler ?? throw new ArgumentNullException(nameof(installUpdateHandler)); _eventHandler = eventHandler ?? throw new ArgumentNullException(nameof(eventHandler)); _oauthHandler = oauthHandler ?? throw new ArgumentNullException(nameof(oauthHandler)); _uninstallHandler = uninstallHandler ?? throw new ArgumentNullException(nameof(uninstallHandler)); _cryptoUtils = cryptoUtils ?? throw new ArgumentNullException(nameof(cryptoUtils)); }
public static async Task <HttpResponseMessage> HandleEventWebhookAsync( [HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = "events")] HttpRequestMessage request, [OrchestrationClient] DurableOrchestrationClient durableClient, [ServerlessCqrsEventWebhookHandler("EventHandlerOrchestrator")] IEventWebhookHandler handler ) { return(await handler.HandleAsync(request, durableClient)); }