Class ParametroConfiguracionNotificado<E,T>
- java.lang.Object
-
- io.github.alextmjugador.khron.libconfig.ParametroConfiguracion<E,T>
-
- io.github.alextmjugador.khron.libconfig.ParametroConfiguracionNotificado<E,T>
-
- Type Parameters:
E
- El tipo de dato del parámetro de configuración.T
- El tipo de valor almacenado en el fichero de configuración YAML para este parámetro.
- Direct Known Subclasses:
MundosSincronizacion
public abstract class ParametroConfiguracionNotificado<E,T> extends ParametroConfiguracion<E,T>
Modela un parámetro de configuración que notifica a un método estático de una determinada clase cuando se produce un cambio en él.- Author:
- AlexTMjugador
-
-
Field Summary
Fields Modifier and Type Field Description private NotificableCambioConfiguracion<E>
manejadorCambio
Contiene una referencia al objeto con un método que se invocará cuando cambie el valor del parámetro de configuración.
-
Constructor Summary
Constructors Constructor Description ParametroConfiguracionNotificado(org.bukkit.plugin.Plugin plugin, String rutaConfiguracion, String id, String permiso, NotificableCambioConfiguracion<E> manejadorCambio)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected E
procesarValor(E nuevoValor)
Procesa el valor que se le pasa como parámetro, dejándolo listo para ser el valor guardado en las estructuras de datos internas del plugin.-
Methods inherited from class io.github.alextmjugador.khron.libconfig.ParametroConfiguracion
getId, getPermiso, getPlugin, getRutaConfiguracion, getValor, getValorYaml, leer, puedeCambiarlo, recargarConfiguracion, setValor, setValor, setValor, valorValido, valorValido
-
-
-
-
Field Detail
-
manejadorCambio
private final NotificableCambioConfiguracion<E> manejadorCambio
Contiene una referencia al objeto con un método que se invocará cuando cambie el valor del parámetro de configuración.
-
-
Constructor Detail
-
ParametroConfiguracionNotificado
public ParametroConfiguracionNotificado(org.bukkit.plugin.Plugin plugin, String rutaConfiguracion, String id, String permiso, NotificableCambioConfiguracion<E> manejadorCambio) throws IllegalArgumentException
- Parameters:
manejadorCambio
- El objeto que se encargará de manejar el evento de cambio de valor del parámetro de configuración.- Throws:
IllegalArgumentException
-
-
Method Detail
-
procesarValor
protected E procesarValor(E nuevoValor)
Description copied from class:ParametroConfiguracion
Procesa el valor que se le pasa como parámetro, dejándolo listo para ser el valor guardado en las estructuras de datos internas del plugin. Este método solo debe de ser llamado internamente desde su clase, no desde otras (las sobreescrituras de las subclases pueden asumir tal condición). Entonces, cuando es invocado, se ha garantizado quenuevoValor
es válido y diferente al actual, y el valor devuelto será asignado como nuevo valor del parámetro de configuración.- Overrides:
procesarValor
in classParametroConfiguracion<E,T>
- Parameters:
nuevoValor
- El valor a procesar.- Returns:
- El susodicho valor, procesado.
-
-