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.extension.TweedExtension;
|
||||||
import de.siphalor.tweed5.core.api.middleware.Middleware;
|
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.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.api.validators.SimpleValidatorMiddleware;
|
||||||
import de.siphalor.tweed5.defaultextensions.validation.impl.ValidationExtensionImpl;
|
import de.siphalor.tweed5.defaultextensions.validation.impl.ValidationExtensionImpl;
|
||||||
import de.siphalor.tweed5.patchwork.api.Patchwork;
|
import de.siphalor.tweed5.patchwork.api.Patchwork;
|
||||||
@@ -59,4 +60,6 @@ public interface ValidationExtension extends TweedExtension {
|
|||||||
ValidationIssues captureValidationIssues(Patchwork readContextExtensionsData);
|
ValidationIssues captureValidationIssues(Patchwork readContextExtensionsData);
|
||||||
|
|
||||||
<T extends @Nullable Object> ValidationIssues validate(ConfigEntry<T> entry, T value);
|
<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();
|
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
|
@Data
|
||||||
private static class CustomEntryData {
|
private static class CustomEntryData {
|
||||||
@Setter(AccessLevel.NONE)
|
@Setter(AccessLevel.NONE)
|
||||||
|
|||||||
Reference in New Issue
Block a user