Added a return type to ResponderContext#runCommand

This commit is contained in:
mathias 2021-10-03 21:35:31 +02:00
parent 818c26bd85
commit 47a2de60ac
No known key found for this signature in database
GPG Key ID: 8950DF62139C852A

View File

@ -74,9 +74,9 @@ public class ResponderContext extends SimpleHttpHandler {
ResponderEvent event = getEvent(appPackageName, messengerPackageName, sender, message, isGroup, groupParticipant, ruleId, controller); ResponderEvent event = getEvent(appPackageName, messengerPackageName, sender, message, isGroup, groupParticipant, ruleId, controller);
if (message.startsWith(responder.getPrefix())) if (message.startsWith(responder.getPrefix())
runCommand(appPackageName, messengerPackageName, sender, message.substring(responder.getPrefix().length()), isGroup, && runCommand(appPackageName, messengerPackageName, sender, message.substring(responder.getPrefix().length()), isGroup,
groupParticipant, ruleId, controller); groupParticipant, ruleId, controller)) return;
triggerEvent(event); triggerEvent(event);
@ -129,8 +129,9 @@ public class ResponderContext extends SimpleHttpHandler {
* @param groupParticipant (Optional) The group participant * @param groupParticipant (Optional) The group participant
* @param ruleId The id of the rule that has been executed * @param ruleId The id of the rule that has been executed
* @param controller The response controller of the executed request * @param controller The response controller of the executed request
* @return <code>true</code> if the command was executed, otherwise <code>false</code>
*/ */
public void runCommand(String appPackageName, String messengerPackageName, String sender, String commandMessage, boolean isGroup, public boolean runCommand(String appPackageName, String messengerPackageName, String sender, String commandMessage, boolean isGroup,
String groupParticipant, int ruleId, HttpResponseController controller) { String groupParticipant, int ruleId, HttpResponseController controller) {
for (ResponderCommand command : responder.getCommands()) { for (ResponderCommand command : responder.getCommands()) {
CommandInfo info = command.getClass().getAnnotation(CommandInfo.class); CommandInfo info = command.getClass().getAnnotation(CommandInfo.class);
@ -146,17 +147,20 @@ public class ResponderContext extends SimpleHttpHandler {
Arguments arguments = handleUsage(command, foundTrigger, commandMessage, controller); Arguments arguments = handleUsage(command, foundTrigger, commandMessage, controller);
if (arguments == null) return; if (arguments == null) return true;
if (command instanceof ResponderGroupCommand) { if (command instanceof ResponderGroupCommand) {
((ResponderGroupCommand) command) ((ResponderGroupCommand) command)
.execute(new GroupCommand(controller, this, appPackageName, messengerPackageName, ruleId, sender, commandMessage, .execute(new GroupCommand(controller, this, appPackageName, messengerPackageName, ruleId, sender, commandMessage,
groupParticipant), arguments); groupParticipant), arguments);
return true;
} else if (command instanceof ResponderChatCommand) { } else if (command instanceof ResponderChatCommand) {
((ResponderChatCommand) command) ((ResponderChatCommand) command)
.execute(new ChatCommand(controller, this, appPackageName, messengerPackageName, ruleId, sender, commandMessage), arguments); .execute(new ChatCommand(controller, this, appPackageName, messengerPackageName, ruleId, sender, commandMessage), arguments);
return true;
} }
} }
return false;
} }
/** /**