public static CommandIssuer getCurrentCommandIssuer() { CommandOperationContext context = commandOperationContext.get().peek(); return context != null ? context.getCommandIssuer() : null; }
/** @deprecated Unstable API */ @Deprecated @UnstableAPI public CommandHelp generateCommandHelp(@NotNull String command) { verifyUnstableAPI("help"); CommandOperationContext context = getCurrentCommandOperationContext(); if (context == null) { throw new IllegalStateException("This method can only be called as part of a command execution."); } return generateCommandHelp(context.getCommandIssuer(), command); }
private void validateConditions(String conditions, CommandOperationContext context) throws InvalidCommandArgument { if (conditions == null) { return; } conditions = this.manager.getCommandReplacements().replace(conditions); CommandIssuer issuer = context.getCommandIssuer(); for (String cond : ACFPatterns.PIPE.split(conditions)) { String[] split = ACFPatterns.COLON.split(cond, 2); String id = split[0].toLowerCase(); Condition<I> condition = this.conditions.get(id); if (condition == null) { RegisteredCommand cmd = context.getRegisteredCommand(); this.manager.log(LogLevel.ERROR, "Could not find command condition " + id + " for " + cmd.method.getName()); continue; } String config = split.length == 2 ? split[1] : null; //noinspection unchecked CC conditionContext = (CC) this.manager.createConditionContext(issuer, config); //noinspection unchecked condition.validateCondition(conditionContext); } }
/** @deprecated Unstable API */ @Deprecated @UnstableAPI public CommandHelp generateCommandHelp() { verifyUnstableAPI("help"); CommandOperationContext context = getCurrentCommandOperationContext(); if (context == null) { throw new IllegalStateException("This method can only be called as part of a command execution."); } String commandLabel = context.getCommandLabel(); return generateCommandHelp(context.getCommandIssuer(), this.obtainRootCommand(commandLabel)); }