Package cloud.commandframework.bukkit
Class BukkitCommandManager<C>
- java.lang.Object
-
- cloud.commandframework.CommandManager<C>
-
- cloud.commandframework.bukkit.BukkitCommandManager<C>
-
- Type Parameters:
C- Command sender type
public class BukkitCommandManager<C> extends cloud.commandframework.CommandManager<C>Command manager for the Bukkit platform
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classBukkitCommandManager.BrigadierFailureExceptionstatic classBukkitCommandManager.BrigadierFailureReasonReasons to explain why Brigadier failed to initialize
-
Constructor Summary
Constructors Constructor Description BukkitCommandManager(@NonNull org.bukkit.plugin.Plugin owningPlugin, @NonNull java.util.function.Function<@NonNull cloud.commandframework.CommandTree<C>,@NonNull cloud.commandframework.execution.CommandExecutionCoordinator<C>> commandExecutionCoordinator, @NonNull java.util.function.Function<@NonNull org.bukkit.command.CommandSender,@NonNull C> commandSenderMapper, @NonNull java.util.function.Function<@NonNull C,@NonNull org.bukkit.command.CommandSender> backwardsCommandSenderMapper)Construct a new Bukkit command manager
-
Method Summary
Modifier and Type Method Description protected voidcheckBrigadierCompatibility()@NonNull BukkitCommandMetacreateDefaultCommandMeta()Create default command meta data@NonNull java.util.function.Function<@NonNull C,@NonNull org.bukkit.command.CommandSender>getBackwardsCommandSenderMapper()Get the backwards command sender plugin@NonNull java.util.function.Function<@NonNull org.bukkit.command.CommandSender,@NonNull C>getCommandSenderMapper()Get the command sender mapper@NonNull org.bukkit.plugin.PlugingetOwningPlugin()Get the plugin that owns the managerprotected booleangetSplitAliases()booleanhasPermission(@NonNull C sender, @NonNull java.lang.String permission)@NonNull java.util.Set<@NonNull CloudBukkitCapabilities>queryCapabilities()Check for the platform capabilitiesbooleanqueryCapability(@NonNull CloudBukkitCapabilities capability)Query for a specific capabilityvoidregisterBrigadier()Attempt to register the Brigadier mapper, and return it.protected voidsetSplitAliases(boolean value)@NonNull java.lang.StringstripNamespace(@NonNull java.lang.String command)Strip the plugin namespace from a plugin namespaced command.@NonNull cloud.commandframework.tasks.TaskRecipetaskRecipe()Create a new task recipe.-
Methods inherited from class cloud.commandframework.CommandManager
argumentBuilder, command, command, commandBuilder, commandBuilder, commandBuilder, commandBuilder, commandBuilder, commandBuilder, executeCommand, flagBuilder, getCaptionRegistry, getCommandHelpHandler, getCommandRegistrationHandler, getCommands, getCommandSuggestionProcessor, getCommandSyntaxFormatter, getCommandTree, getExceptionHandler, getParserRegistry, getSetting, handleException, hasPermission, postprocessContext, preprocessContext, registerCommandPostProcessor, registerCommandPreProcessor, registerDefaultCaptions, registerExceptionHandler, setCaptionRegistry, setCommandRegistrationHandler, setCommandSuggestionProcessor, setCommandSyntaxFormatter, setSetting, suggest
-
-
-
-
Constructor Detail
-
BukkitCommandManager
public BukkitCommandManager(@NonNull org.bukkit.plugin.Plugin owningPlugin, @NonNull java.util.function.Function<@NonNull cloud.commandframework.CommandTree<C>,@NonNull cloud.commandframework.execution.CommandExecutionCoordinator<C>> commandExecutionCoordinator, @NonNull java.util.function.Function<@NonNull org.bukkit.command.CommandSender,@NonNull C> commandSenderMapper, @NonNull java.util.function.Function<@NonNull C,@NonNull org.bukkit.command.CommandSender> backwardsCommandSenderMapper) throws java.lang.ExceptionConstruct a new Bukkit command manager- Parameters:
owningPlugin- Plugin that is constructing the managercommandExecutionCoordinator- Coordinator providercommandSenderMapper- Function that mapsCommandSenderto the command sender typebackwardsCommandSenderMapper- Function that maps the command sender type toCommandSender- Throws:
java.lang.Exception- If the construction of the manager fails
-
-
Method Detail
-
taskRecipe
public @NonNull cloud.commandframework.tasks.TaskRecipe taskRecipe()
Create a new task recipe. This can be used to create chains of synchronous/asynchronous method calls- Returns:
- Task recipe
-
getOwningPlugin
public @NonNull org.bukkit.plugin.Plugin getOwningPlugin()
Get the plugin that owns the manager- Returns:
- Owning plugin
-
createDefaultCommandMeta
public @NonNull BukkitCommandMeta createDefaultCommandMeta()
Create default command meta data- Specified by:
createDefaultCommandMetain classcloud.commandframework.CommandManager<C>- Returns:
- Meta data
-
getCommandSenderMapper
public final @NonNull java.util.function.Function<@NonNull org.bukkit.command.CommandSender,@NonNull C> getCommandSenderMapper()
Get the command sender mapper- Returns:
- Command sender mapper
-
hasPermission
public final boolean hasPermission(@NonNull C sender, @NonNull java.lang.String permission)
- Specified by:
hasPermissionin classcloud.commandframework.CommandManager<C>
-
getSplitAliases
protected final boolean getSplitAliases()
-
setSplitAliases
protected final void setSplitAliases(boolean value)
-
checkBrigadierCompatibility
protected final void checkBrigadierCompatibility() throws BukkitCommandManager.BrigadierFailureException
-
queryCapability
public final boolean queryCapability(@NonNull CloudBukkitCapabilities capability)
Query for a specific capability- Parameters:
capability- Capability- Returns:
trueif the manager has the given capability, elsefalse
-
queryCapabilities
public final @NonNull java.util.Set<@NonNull CloudBukkitCapabilities> queryCapabilities()
Check for the platform capabilities- Returns:
- A set containing all capabilities of the instance
-
registerBrigadier
public void registerBrigadier() throws BukkitCommandManager.BrigadierFailureExceptionAttempt to register the Brigadier mapper, and return it.- Throws:
BukkitCommandManager.BrigadierFailureException- If Brigadier isn't supported by the platform
-
stripNamespace
public final @NonNull java.lang.String stripNamespace(@NonNull java.lang.String command)
Strip the plugin namespace from a plugin namespaced command. This will also strip the leading '/' if it's present- Parameters:
command- Command- Returns:
- Stripped command
-
getBackwardsCommandSenderMapper
public final @NonNull java.util.function.Function<@NonNull C,@NonNull org.bukkit.command.CommandSender> getBackwardsCommandSenderMapper()
Get the backwards command sender plugin- Returns:
- The backwards command sender mapper
-
-