FieldRequiredRule fix

This commit is contained in:
akulikov 2023-04-06 10:32:24 +03:00
parent a45445340a
commit 156e181d50

View file

@ -19,7 +19,7 @@ public record FieldRequiredRule<R, V>(
String fieldName,
Function<R, V> getter,
IErrorEnumId errorEmptyRequiredValue,
Function<V, IErrorEnumId>[] additionalChecks
Function<R, IErrorEnumId>[] additionalChecks
) implements IValidationRule<ImdgValidationContext<R>> {
/**
@ -32,7 +32,7 @@ public record FieldRequiredRule<R, V>(
public static <R, V> FieldRequiredRule<R, V> instance(String fieldName,
Function<R, V> getter,
IErrorEnumId errorEmptyRequiredValue,
Function<V, IErrorEnumId> ... additionalChecks) {
Function<R, IErrorEnumId> ... additionalChecks) {
if (errorEmptyRequiredValue == null) throw new IllegalArgumentException("Empty errorEmptyRequiredValue");
return new FieldRequiredRule<>(fieldName, getter, errorEmptyRequiredValue, additionalChecks);
}
@ -42,8 +42,8 @@ public record FieldRequiredRule<R, V>(
R validatedObject = context.getValidatedObject();
V value = getter.apply(validatedObject);
if (value == null) return of(errorEmptyRequiredValue, fieldName);
for (Function<V, IErrorEnumId> additionalCheck : additionalChecks) {
IErrorEnumId validationError = additionalCheck.apply(value);
for (Function<R, IErrorEnumId> additionalCheck : additionalChecks) {
IErrorEnumId validationError = additionalCheck.apply(validatedObject);
if (validationError != null)
return of(validationError, fieldName);
}