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 void SetProvider(string actionId, IBlockOptionProvider handler) => _options.SetProvider(actionId, handler);
public TConfig RegisterBlockOptionProvider(string actionId, IBlockOptionProvider provider) => Chain(() => AddBlockOptionProvider(actionId, provider));
protected abstract void AddBlockOptionProvider(string actionId, IBlockOptionProvider provider);
protected override void AddBlockOptionProvider(string actionId, IBlockOptionProvider provider) => AddKeyedHandler(actionId, provider);
public void SetProvider(string actionId, IBlockOptionProvider provider) => _providers[actionId] = provider;