mirror of
https://github.com/Sheldan/abstracto.git
synced 2026-04-16 04:21:49 +00:00
[AB-135] adding a template to describe the parameter validators for help texts, fixing assignable roles not available as module
This commit is contained in:
@@ -2,7 +2,9 @@ package dev.sheldan.abstracto.assignableroles.command;
|
|||||||
|
|
||||||
import dev.sheldan.abstracto.core.command.config.ModuleInfo;
|
import dev.sheldan.abstracto.core.command.config.ModuleInfo;
|
||||||
import dev.sheldan.abstracto.core.command.config.ModuleInterface;
|
import dev.sheldan.abstracto.core.command.config.ModuleInterface;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
@Component
|
||||||
public class AssignableRoleModule implements ModuleInterface {
|
public class AssignableRoleModule implements ModuleInterface {
|
||||||
public static final String ASSIGNABLE_ROLES = "assignableRoles";
|
public static final String ASSIGNABLE_ROLES = "assignableRoles";
|
||||||
|
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ public class CommandReceivedHandler extends ListenerAdapter {
|
|||||||
boolean validate = parameterValidator.validate(parameters.getParameters().get(i));
|
boolean validate = parameterValidator.validate(parameters.getParameters().get(i));
|
||||||
if(!validate) {
|
if(!validate) {
|
||||||
log.trace("Parameter {} in command {} failed to validate.", parameter.getName(), foundCommand.getConfiguration().getName());
|
log.trace("Parameter {} in command {} failed to validate.", parameter.getName(), foundCommand.getConfiguration().getName());
|
||||||
throw new CommandParameterValidationException(parameterValidator.getParameters(), parameterValidator.getTemplateName(), parameter);
|
throw new CommandParameterValidationException(parameterValidator.getParameters(), parameterValidator.getExceptionTemplateName(), parameter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,12 @@
|
|||||||
package dev.sheldan.abstracto.core.command.config;
|
package dev.sheldan.abstracto.core.command.config;
|
||||||
|
|
||||||
import dev.sheldan.abstracto.core.command.config.validator.ValidatorParam;
|
import dev.sheldan.abstracto.core.command.config.validator.ValidatorParam;
|
||||||
|
import dev.sheldan.abstracto.templating.Templatable;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public interface ParameterValidator {
|
public interface ParameterValidator extends Templatable {
|
||||||
boolean validate(Object value);
|
boolean validate(Object value);
|
||||||
List<ValidatorParam> getParameters();
|
List<ValidatorParam> getParameters();
|
||||||
String getTemplateName();
|
String getExceptionTemplateName();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,7 +39,17 @@ public class MaxIntegerValueValidator implements ParameterValidator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getTemplateName() {
|
public String getExceptionTemplateName() {
|
||||||
return "command_parameter_validation_value_too_large";
|
return "command_parameter_validation_value_too_large";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getTemplateName() {
|
||||||
|
return "max_integer_value_validation_description";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getTemplateModel() {
|
||||||
|
return getParameters().get(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ public class MaxStringLengthValidator implements ParameterValidator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getTemplateName() {
|
public String getExceptionTemplateName() {
|
||||||
return "command_parameter_validation_string_too_long";
|
return "command_parameter_validation_string_too_long";
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -51,4 +51,13 @@ public class MaxStringLengthValidator implements ParameterValidator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getTemplateName() {
|
||||||
|
return "max_string_length_validation_description";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getTemplateModel() {
|
||||||
|
return getParameters().get(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -53,8 +53,18 @@ public class MinIntegerValueValidator implements ParameterValidator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getTemplateName() {
|
public String getExceptionTemplateName() {
|
||||||
return "command_parameter_validation_value_too_small";
|
return "command_parameter_validation_value_too_small";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getTemplateName() {
|
||||||
|
return "min_integer_value_validation_description";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getTemplateModel() {
|
||||||
|
return getParameters().get(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -39,7 +39,17 @@ public class MinStringLengthValidator implements ParameterValidator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getTemplateName() {
|
public String getExceptionTemplateName() {
|
||||||
return "command_parameter_validation_string_too_short";
|
return "command_parameter_validation_string_too_short";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getTemplateName() {
|
||||||
|
return "min_string_length_validation_description";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getTemplateModel() {
|
||||||
|
return getParameters().get(0);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user