Merge pull request #3141 from Multiverse/ben/mv5/flag-group

Allow customisation of flag group prefix used
This commit is contained in:
Ben Woo 2024-12-20 23:08:57 +08:00 committed by GitHub
commit a5009bf8a5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 10 additions and 2 deletions

View File

@ -8,6 +8,6 @@ import org.mvplugins.multiverse.core.commandtools.MultiverseCommand;
@Contract
public abstract class CoreCommand extends MultiverseCommand {
protected CoreCommand(@NotNull MVCommandManager commandManager) {
super(commandManager);
super(commandManager, "mv");
}
}

View File

@ -25,12 +25,20 @@ public abstract class MultiverseCommand extends BaseCommand {
* The flags manager for the above command manager.
*/
protected final CommandFlagsManager flagsManager;
private final String flagGroupPrefix;
private String flagGroupName;
private CommandFlagGroup.Builder flagGroupBuilder;
// todo: Remove after sub-modules are updated
@Deprecated
protected MultiverseCommand(@NotNull MVCommandManager commandManager) {
this(commandManager, "mv");
}
protected MultiverseCommand(@NotNull MVCommandManager commandManager, @NotNull String flagGroupPrefix) {
this.commandManager = commandManager;
this.flagsManager = commandManager.getFlagsManager();
this.flagGroupPrefix = flagGroupPrefix;
}
@PostConstruct
@ -59,7 +67,7 @@ public abstract class MultiverseCommand extends BaseCommand {
*/
protected <T extends CommandFlag> T flag(T flag) {
if (flagGroupBuilder == null) {
flagGroupBuilder = CommandFlagGroup.builder("mv" + getClass().getSimpleName().toLowerCase());
flagGroupBuilder = CommandFlagGroup.builder(flagGroupPrefix + getClass().getSimpleName().toLowerCase());
}
flagGroupBuilder.add(flag);
Logging.finest("Registered flag: " + flag);