public SlackRequestHandler( IEventHandler eventHandler, IAsyncBlockActionHandler blockActionHandler, IBlockOptionProvider blockOptionProvider, IInteractiveMessageHandler interactiveMessageHandler, IAsyncMessageShortcutHandler messageShortcutHandler, IAsyncGlobalShortcutHandler globalShortcutHandler, IOptionProvider optionProvider, IDialogSubmissionHandler dialogSubmissionHandler, IAsyncViewSubmissionHandler viewSubmissionHandler, IAsyncSlashCommandHandler slashCommandHandler, SlackJsonSettings jsonSettings) { _eventHandler = eventHandler; _blockActionHandler = blockActionHandler; _blockOptionProvider = blockOptionProvider; _interactiveMessageHandler = interactiveMessageHandler; _messageShortcutHandler = messageShortcutHandler; _globalShortcutHandler = globalShortcutHandler; _optionProvider = optionProvider; _dialogSubmissionHandler = dialogSubmissionHandler; _viewSubmissionHandler = viewSubmissionHandler; _slashCommandHandler = slashCommandHandler; _jsonSettings = jsonSettings; }
public TConfig RegisterAsyncSlashCommandHandler(string command, IAsyncSlashCommandHandler handler) { ValidateCommandName(command); return(Chain(() => AddSlashCommandHandler(command, handler))); }
protected abstract void AddSlashCommandHandler(string command, IAsyncSlashCommandHandler handler);
protected override void AddSlashCommandHandler(string command, IAsyncSlashCommandHandler handler) => AddKeyedHandler(command, handler);