Skip to content

Commit a19717b

Browse files
committed
use simple name matching
1 parent 732e298 commit a19717b

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

validator/src/main/java/io/avaje/validation/adapter/AnnotationValidationAdapter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package io.avaje.validation.adapter;
22

3-
import java.lang.reflect.Type;
3+
import java.lang.annotation.Annotation;
44
import java.util.Map;
55

66
import io.avaje.validation.Validator;
@@ -23,6 +23,6 @@ public interface Factory {
2323
* <p>Returning null means that the adapter could be created by another factory.
2424
*/
2525
AnnotationValidationAdapter<?> create(
26-
Type annotationType, Validator context, MessageInterpolator interpolator);
26+
Class<? extends Annotation> annotationType, Validator context, MessageInterpolator interpolator);
2727
}
2828
}

validator/src/main/java/io/avaje/validation/core/JakartaTypeAdapters.java

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,25 +28,28 @@
2828

2929
import io.avaje.validation.adapter.AnnotationValidationAdapter;
3030
import io.avaje.validation.adapter.ValidationRequest;
31-
import jakarta.validation.constraints.AssertTrue;
32-
import jakarta.validation.constraints.NotBlank;
33-
import jakarta.validation.constraints.Past;
34-
import jakarta.validation.constraints.Pattern;
3531
import jakarta.validation.constraints.Pattern.Flag;
36-
import jakarta.validation.constraints.Size;
3732

3833
final class JakartaTypeAdapters {
3934
private JakartaTypeAdapters() {}
4035

4136
@SuppressWarnings({"unchecked", "rawtypes"})
4237
static final AnnotationValidationAdapter.Factory FACTORY =
4338
(annotationType, validator, interpolator) -> {
44-
if (annotationType == AssertTrue.class) return new AssertTrueAdapter(interpolator);
45-
if (annotationType == NotBlank.class) return new NotBlankAdapter(interpolator);
46-
if (annotationType == Past.class) return new PastAdapter(interpolator);
47-
if (annotationType == Pattern.class) return new PatternAdapter(interpolator);
48-
if (annotationType == Size.class) return new SizeAdapter(interpolator);
49-
return null;
39+
switch (annotationType.getSimpleName()) {
40+
case "AssertTrue":
41+
return new AssertTrueAdapter(interpolator);
42+
case "NotBlank":
43+
return new NotBlankAdapter(interpolator);
44+
case "Past":
45+
return new PastAdapter(interpolator);
46+
case "Pattern":
47+
return new PatternAdapter(interpolator);
48+
case "Size":
49+
return new SizeAdapter(interpolator);
50+
default:
51+
return null;
52+
}
5053
};
5154

5255
private static final class PatternAdapter implements AnnotationValidationAdapter<CharSequence> {

0 commit comments

Comments
 (0)