fix(default-exts): Add missing flat validation API
This commit is contained in:
@@ -4,6 +4,7 @@ import de.siphalor.tweed5.core.api.entry.ConfigEntry;
|
||||
import de.siphalor.tweed5.core.api.extension.TweedExtension;
|
||||
import de.siphalor.tweed5.core.api.middleware.Middleware;
|
||||
import de.siphalor.tweed5.defaultextensions.validation.api.result.ValidationIssues;
|
||||
import de.siphalor.tweed5.defaultextensions.validation.api.result.ValidationResult;
|
||||
import de.siphalor.tweed5.defaultextensions.validation.api.validators.SimpleValidatorMiddleware;
|
||||
import de.siphalor.tweed5.defaultextensions.validation.impl.ValidationExtensionImpl;
|
||||
import de.siphalor.tweed5.patchwork.api.Patchwork;
|
||||
@@ -59,4 +60,6 @@ public interface ValidationExtension extends TweedExtension {
|
||||
ValidationIssues captureValidationIssues(Patchwork readContextExtensionsData);
|
||||
|
||||
<T extends @Nullable Object> ValidationIssues validate(ConfigEntry<T> entry, T value);
|
||||
|
||||
<T extends @Nullable Object> ValidationResult<T> validateValueFlat(ConfigEntry<T> entry, T value);
|
||||
}
|
||||
|
||||
@@ -184,6 +184,16 @@ public class ValidationExtensionImpl implements ReadWriteRelatedExtension, Valid
|
||||
return validatingVisitor.validationIssues();
|
||||
}
|
||||
|
||||
@Override
|
||||
public <T> ValidationResult<T> validateValueFlat(ConfigEntry<T> entry, T value) {
|
||||
ConfigEntryValidator entryValidator = entry.extensionsData()
|
||||
.get(customEntryDataAccess)
|
||||
.completeValidator();
|
||||
assert entryValidator != null;
|
||||
|
||||
return entryValidator.validate(entry, value);
|
||||
}
|
||||
|
||||
@Data
|
||||
private static class CustomEntryData {
|
||||
@Setter(AccessLevel.NONE)
|
||||
|
||||
Reference in New Issue
Block a user