Merge pull request #309 from dschulz/dev

Use a regular expression to split command parameters
This commit is contained in:
Ruben Bermudez 2017-10-06 18:20:20 +02:00 committed by GitHub
commit 193834e023
2 changed files with 4 additions and 4 deletions

View File

@ -11,7 +11,7 @@ import org.telegram.telegrambots.bots.AbsSender;
*/
public abstract class BotCommand {
public final static String COMMAND_INIT_CHARACTER = "/";
public static final String COMMAND_PARAMETER_SEPARATOR = " ";
public static final String COMMAND_PARAMETER_SEPARATOR_REGEXP = "\\s+";
private final static int COMMAND_MAX_LENGTH = 32;
private final String commandIdentifier;
@ -75,4 +75,4 @@ public abstract class BotCommand {
* @param arguments passed arguments
*/
public abstract void execute(AbsSender absSender, User user, Chat chat, String[] arguments);
}
}

View File

@ -97,7 +97,7 @@ public final class CommandRegistry implements ICommandRegistry {
String text = message.getText();
if (text.startsWith(BotCommand.COMMAND_INIT_CHARACTER)) {
String commandMessage = text.substring(1);
String[] commandSplit = commandMessage.split(BotCommand.COMMAND_PARAMETER_SEPARATOR);
String[] commandSplit = commandMessage.split(BotCommand.COMMAND_PARAMETER_SEPARATOR_REGEXP);
String command = removeUsernameFromCommandIfNeeded(commandSplit[0]);
@ -126,4 +126,4 @@ public final class CommandRegistry implements ICommandRegistry {
}
return command;
}
}
}