Skip to content

Commit 57126ce

Browse files
committed
HV-1589 Apply the usual optimizations on very sollicited map key classes
1 parent 29e4808 commit 57126ce

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

engine/src/main/java/org/hibernate/validator/internal/engine/constraintvalidation/ConstraintValidatorManager.java

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -305,11 +305,12 @@ else if ( TypeHelper.isAssignable( assignableTypes.get( i ), type ) ) {
305305
}
306306

307307
private static final class CacheKey {
308-
private final ConstraintAnnotationDescriptor<?> annotationDescriptor;
309-
private final Type validatedType;
310-
private final ConstraintValidatorFactory constraintValidatorFactory;
311-
private final HibernateConstraintValidatorInitializationContext constraintValidatorInitializationContext;
312-
private final int hashCode;
308+
// These members are not final for optimization purposes
309+
private ConstraintAnnotationDescriptor<?> annotationDescriptor;
310+
private Type validatedType;
311+
private ConstraintValidatorFactory constraintValidatorFactory;
312+
private HibernateConstraintValidatorInitializationContext constraintValidatorInitializationContext;
313+
private int hashCode;
313314

314315
private CacheKey(ConstraintAnnotationDescriptor<?> annotationDescriptor, Type validatorType, ConstraintValidatorFactory constraintValidatorFactory,
315316
HibernateConstraintValidatorInitializationContext constraintValidatorInitializationContext) {
@@ -333,7 +334,8 @@ public boolean equals(Object o) {
333334
if ( this == o ) {
334335
return true;
335336
}
336-
if ( o == null || getClass() != o.getClass() ) {
337+
// no need to check for the type here considering it's only used in a typed map
338+
if ( o == null ) {
337339
return false;
338340
}
339341

0 commit comments

Comments
 (0)