All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.symphony.bdk.bot.sdk.command.CommandDispatcher Maven / Gradle / Ivy

package com.symphony.bdk.bot.sdk.command;

import com.symphony.bdk.bot.sdk.command.model.BotCommand;

/**
 * Dispatches commands to corresponding {@link CommandHandler}
 *
 * @author Marcus Secato
 *
 */
public interface CommandDispatcher {

  /**
   * Registers a {@link BaseCommandHandler} for the given channel (aka command
   * name).
   *
   * @param channel the channel to register to
   * @param handler the command handler for the specified channel
   */
  void register(String channel, BaseCommandHandler handler);

  /**
   * Dispatch the command pushed by the {@link CommandFilter} to the
   * corresponding {@link BaseCommandHandler}.
   *
   * @param channel the channel to push command to
   * @param command the command issued in chat room
   */
  void push(String channel, BotCommand command);

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy