diff --git a/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/identifierconverter/AutocompleteIdentifierConverter.java b/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/identifierconverter/AutocompleteIdentifierConverter.java index f2bf8cc..34892a8 100644 --- a/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/identifierconverter/AutocompleteIdentifierConverter.java +++ b/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/identifierconverter/AutocompleteIdentifierConverter.java @@ -13,27 +13,28 @@ public class AutocompleteIdentifierConverter implements IdentifierProvider.Conve @Override public InteractionIdentifier convert(ChatInputAutoCompleteEvent context) { - List options = Discord4JWrapper.SUB_FILTER.apply(context.getOptions()); - String commandName = context.getCommandName(); + InteractionIdentifier last = InteractionIdentifier.builder() + .type(InteractionType.AUTOCOMPLETE) + .name(context.getCommandName()) + .build(); + List options = Discord4JWrapper.SUB_FILTER.apply(context.getOptions()); if (!options.isEmpty()) { + last = InteractionIdentifier.builder() + .type(InteractionType.AUTOCOMPLETE) + .name(options.getFirst().getName()) + .parent(last) + .build(); + List subOptions = Discord4JWrapper.SUB_FILTER.apply(options.getFirst().getOptions()); if (!subOptions.isEmpty()) - return InteractionIdentifier.createHierarchy( - InteractionType.AUTOCOMPLETE, - commandName, - options.getFirst().getName(), - subOptions.getFirst().getName()); - else - return InteractionIdentifier.createHierarchy( - InteractionType.AUTOCOMPLETE, - commandName, - options.getFirst().getName()); - }else - return InteractionIdentifier.createHierarchy( - InteractionType.AUTOCOMPLETE, - commandName); - + last = InteractionIdentifier.builder() + .type(InteractionType.AUTOCOMPLETE) + .name(subOptions.getFirst().getName()) + .parent(last) + .build(); + } + return last; } } diff --git a/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/identifierconverter/SlashCommandIdentifierConverter.java b/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/identifierconverter/SlashCommandIdentifierConverter.java index 612cd0a..b3fc627 100644 --- a/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/identifierconverter/SlashCommandIdentifierConverter.java +++ b/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/identifierconverter/SlashCommandIdentifierConverter.java @@ -13,27 +13,28 @@ public class SlashCommandIdentifierConverter implements IdentifierProvider.Conve @Override public InteractionIdentifier convert(ChatInputInteractionEvent context) { + InteractionIdentifier last = InteractionIdentifier.builder() + .type(InteractionType.COMMAND) + .name(context.getCommandName()) + .build(); + List options = Discord4JWrapper.SUB_FILTER.apply(context.getOptions()); - String commandName = context.getCommandName(); - if (!options.isEmpty()) { - List sub_options = Discord4JWrapper.SUB_FILTER.apply(options.getFirst().getOptions()); - if (!sub_options.isEmpty()) - return InteractionIdentifier.createHierarchy( - InteractionType.COMMAND, - commandName, - options.getFirst().getName(), - sub_options.getFirst().getName()); - else - return InteractionIdentifier.createHierarchy( - InteractionType.COMMAND, - commandName, - options.getFirst().getName()); - }else - return InteractionIdentifier.createHierarchy( - InteractionType.COMMAND, - commandName); + last = InteractionIdentifier.builder() + .type(InteractionType.COMMAND) + .name(options.getFirst().getName()) + .parent(last) + .build(); + List subOptions = Discord4JWrapper.SUB_FILTER.apply(options.getFirst().getOptions()); + if (!subOptions.isEmpty()) + last = InteractionIdentifier.builder() + .type(InteractionType.COMMAND) + .name(subOptions.getFirst().getName()) + .parent(last) + .build(); + } + return last; } } diff --git a/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/identifierconverter/AutocompleteIdentifierConverter.java b/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/identifierconverter/AutocompleteIdentifierConverter.java index 38da7ca..4e6195e 100644 --- a/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/identifierconverter/AutocompleteIdentifierConverter.java +++ b/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/identifierconverter/AutocompleteIdentifierConverter.java @@ -13,27 +13,28 @@ public class AutocompleteIdentifierConverter implements IdentifierProvider.Conve @Override public InteractionIdentifier convert(AutocompleteInteraction context) { - List options = context.getOptions(); - String commandName = context.getCommandName(); + InteractionIdentifier last = InteractionIdentifier.builder() + .type(InteractionType.AUTOCOMPLETE) + .name(context.getCommandName()) + .build(); + List options = context.getOptions(); if (!options.isEmpty()) { + last = InteractionIdentifier.builder() + .type(InteractionType.AUTOCOMPLETE) + .name(options.getFirst().getName()) + .parent(last) + .build(); + List subOptions = context.getOptions().getFirst().getOptions(); if (!subOptions.isEmpty()) - return InteractionIdentifier.createHierarchy( - InteractionType.AUTOCOMPLETE, - commandName, - options.getFirst().getName(), - subOptions.getFirst().getName()); - else - return InteractionIdentifier.createHierarchy( - InteractionType.AUTOCOMPLETE, - commandName, - options.getFirst().getName()); - }else - return InteractionIdentifier.createHierarchy( - InteractionType.AUTOCOMPLETE, - commandName); - + last = InteractionIdentifier.builder() + .type(InteractionType.AUTOCOMPLETE) + .name(subOptions.getFirst().getName()) + .parent(last) + .build(); + } + return last; } } diff --git a/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/identifierconverter/SlashCommandIdentifierConverter.java b/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/identifierconverter/SlashCommandIdentifierConverter.java index 4b90bd1..a6f7d5b 100644 --- a/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/identifierconverter/SlashCommandIdentifierConverter.java +++ b/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/identifierconverter/SlashCommandIdentifierConverter.java @@ -13,26 +13,28 @@ public class SlashCommandIdentifierConverter implements IdentifierProvider.Conve @Override public InteractionIdentifier convert(SlashCommandInteraction context) { - List options = context.getOptions(); - String commandName = context.getCommandName(); - if (!options.isEmpty()) { - List sub_options = context.getOptions().getFirst().getOptions(); - if (!sub_options.isEmpty()) - return InteractionIdentifier.createHierarchy( - InteractionType.COMMAND, - commandName, - options.getFirst().getName(), - sub_options.getFirst().getName()); - else - return InteractionIdentifier.createHierarchy( - InteractionType.COMMAND, - commandName, - options.getFirst().getName()); - }else - return InteractionIdentifier.createHierarchy( - InteractionType.COMMAND, - commandName); + InteractionIdentifier last = InteractionIdentifier.builder() + .type(InteractionType.COMMAND) + .name(context.getCommandName()) + .build(); + List options = context.getOptions(); + if (!options.isEmpty()) { + last = InteractionIdentifier.builder() + .type(InteractionType.COMMAND) + .name(options.getFirst().getName()) + .parent(last) + .build(); + + List subOptions = context.getOptions().getFirst().getOptions(); + if (!subOptions.isEmpty()) + last = InteractionIdentifier.builder() + .type(InteractionType.COMMAND) + .name(subOptions.getFirst().getName()) + .parent(last) + .build(); + } + return last; } }