Class ComandosConfiguracion
- java.lang.Object
-
- io.github.alextmjugador.khron.libconfig.ComandosConfiguracion
-
- All Implemented Interfaces:
org.bukkit.command.CommandExecutor
,org.bukkit.command.TabCompleter
,org.bukkit.command.TabExecutor
public final class ComandosConfiguracion extends Object implements org.bukkit.command.TabExecutor
Implementa la lógica de negocio de los comandos de gestión de configuración de un plugin.- Author:
- AlexTMjugador
-
-
Field Summary
Fields Modifier and Type Field Description private String
comandoEstablecer
El comando para establecer parámetros de configuración.private String
comandoRecargar
El comando para recargar la configuración desde disco.private ParametroConfiguracion<?,?>[]
params
Los parámetros de configuración que son gestionados por este comando.
-
Constructor Summary
Constructors Constructor Description ComandosConfiguracion(String comandoEstablecer, String comandoRecargar, ParametroConfiguracion<?,?>... params)
Relaciona este ejecutador de comandos con los comandos que maneja y los parámetros de configuración que debe de permitir gestionar.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private static String
arrayAString(String[] arr, int i)
Concatena todas las cadenas de texto contenidas en un array, separándolas por un espacio en blanco.boolean
onCommand(org.bukkit.command.CommandSender sender, org.bukkit.command.Command command, String label, String[] args)
Implementa la lógica de negocio de los comandos del plugin.List<String>
onTabComplete(org.bukkit.command.CommandSender sender, org.bukkit.command.Command command, String alias, String[] args)
private boolean
seDebeAtender(org.bukkit.command.Command cmd, org.bukkit.command.CommandSender snd)
Comprueba si un determinado comando, enviado por el responsable especificado, debe de ser tenido en cuenta para esta lógica de negocio, ignorando el número de argumentos especificados.private boolean
seDebeAtender(org.bukkit.command.Command cmd, org.bukkit.command.CommandSender snd, int nargs)
Comprueba si un determinado comando, enviado por el responsable especificado, debe de ser tenido en cuenta para esta lógica de negocio.
-
-
-
Field Detail
-
comandoEstablecer
private final String comandoEstablecer
El comando para establecer parámetros de configuración. Debe de coincidir con su definición en plugin.yml.
-
comandoRecargar
private final String comandoRecargar
El comando para recargar la configuración desde disco. Debe de coincidir con su definición en plugin.yml.
-
params
private final ParametroConfiguracion<?,?>[] params
Los parámetros de configuración que son gestionados por este comando.
-
-
Constructor Detail
-
ComandosConfiguracion
public ComandosConfiguracion(String comandoEstablecer, String comandoRecargar, ParametroConfiguracion<?,?>... params) throws IllegalArgumentException
Relaciona este ejecutador de comandos con los comandos que maneja y los parámetros de configuración que debe de permitir gestionar.- Parameters:
comandoEstablecer
- El comando que un usuario podrá emplear para establecer los parámetros de configuración de un plugin.comandoRecargar
- El comando que un usuario podrá emplear para recargar desde disco los parámetros de configuración de un plugin.params
- Los parámetros que se pueden gestionar con los comandos especificados anteriormente.- Throws:
IllegalArgumentException
- Si alguno de los parámetros pasados al constructor es nulo.
-
-
Method Detail
-
onCommand
public boolean onCommand(org.bukkit.command.CommandSender sender, org.bukkit.command.Command command, String label, String[] args)
Implementa la lógica de negocio de los comandos del plugin.- Specified by:
onCommand
in interfaceorg.bukkit.command.CommandExecutor
- Parameters:
sender
- El responsable de enviar el comando.command
- El comando que ha enviado.label
- La etiqueta que se usó para enviar el comando.args
- Los argumentos con los que se llamaron al comando.- Returns:
- Verdadero si el comando se ha ejecutado correctamente, falso si ocurre algún error con los argumentos o su sintaxis.
-
onTabComplete
public List<String> onTabComplete(org.bukkit.command.CommandSender sender, org.bukkit.command.Command command, String alias, String[] args)
- Specified by:
onTabComplete
in interfaceorg.bukkit.command.TabCompleter
-
seDebeAtender
private boolean seDebeAtender(org.bukkit.command.Command cmd, org.bukkit.command.CommandSender snd, int nargs)
Comprueba si un determinado comando, enviado por el responsable especificado, debe de ser tenido en cuenta para esta lógica de negocio.- Parameters:
cmd
- El comando a comprobar.snd
- El responsable de enviar el comando a comprobar.nargs
- El número de argumentos que el responsable de enviar el comando especificó.- Returns:
- Verdadero si debe de ser tenido en cuenta, falso en caso contrario.
-
seDebeAtender
private boolean seDebeAtender(org.bukkit.command.Command cmd, org.bukkit.command.CommandSender snd)
Comprueba si un determinado comando, enviado por el responsable especificado, debe de ser tenido en cuenta para esta lógica de negocio, ignorando el número de argumentos especificados.- Parameters:
cmd
- El comando a comprobar.snd
- El responsable de enviar el comando a comprobar.- Returns:
- Verdadero si debe de ser tenido en cuenta, falso en caso contrario.
-
arrayAString
private static String arrayAString(String[] arr, int i)
Concatena todas las cadenas de texto contenidas en un array, separándolas por un espacio en blanco.- Parameters:
arr
- El array a concatenar.i
- El índice del array a partir del cual concatenar sus siguientes, inclusive.- Returns:
- La susodicha cadena concatenada.
-
-