diff --git a/spring-core/src/main/java/org/springframework/core/convert/TypeDescriptor.java b/spring-core/src/main/java/org/springframework/core/convert/TypeDescriptor.java
index 586cb839024..b55df083082 100644
--- a/spring-core/src/main/java/org/springframework/core/convert/TypeDescriptor.java
+++ b/spring-core/src/main/java/org/springframework/core/convert/TypeDescriptor.java
@@ -248,20 +248,17 @@ public class TypeDescriptor implements Serializable {
}
/**
- * Obtain the annotation of the specified {@code annotationType} that is
- * on this type descriptor.
- *
As of Spring Framework 4.2, this method supports arbitrary levels
- * of meta-annotations.
+ * Obtain the annotation of the specified {@code annotationType} that is on this type descriptor.
+ *
As of Spring Framework 4.2, this method supports arbitrary levels of meta-annotations.
* @param annotationType the annotation type
* @return the annotation, or {@code null} if no such annotation exists on this type descriptor
*/
@SuppressWarnings("unchecked")
public T getAnnotation(Class annotationType) {
// Search in annotations that are "present" (i.e., locally declared or inherited)
- //
// NOTE: this unfortunately favors inherited annotations over locally declared composed annotations.
for (Annotation annotation : getAnnotations()) {
- if (annotation.annotationType().equals(annotationType)) {
+ if (annotation.annotationType() == annotationType) {
return (T) annotation;
}
}
@@ -471,7 +468,7 @@ public class TypeDescriptor implements Serializable {
return false;
}
for (Annotation ann : getAnnotations()) {
- if (other.getAnnotation(ann.annotationType()) == null) {
+ if (!other.hasAnnotation(ann.annotationType())) {
return false;
}
}
diff --git a/spring-core/src/main/java/org/springframework/core/convert/support/ObjectToObjectConverter.java b/spring-core/src/main/java/org/springframework/core/convert/support/ObjectToObjectConverter.java
index 9730733c617..ce97d7be72a 100644
--- a/spring-core/src/main/java/org/springframework/core/convert/support/ObjectToObjectConverter.java
+++ b/spring-core/src/main/java/org/springframework/core/convert/support/ObjectToObjectConverter.java
@@ -144,23 +144,22 @@ final class ObjectToObjectConverter implements ConditionalGenericConverter {
return ClassUtils.getConstructorIfAvailable(targetClass, sourceClass);
}
- private static boolean hasToMethodOrFactoryMethodOrConstructor(Class> targetClass,
- Class> sourceClass) {
+ private static boolean hasToMethodOrFactoryMethodOrConstructor(Class> targetClass, Class> sourceClass) {
return (hasToMethod(targetClass, sourceClass) ||
hasFactoryMethod(targetClass, sourceClass) ||
hasFactoryConstructor(targetClass, sourceClass));
}
static boolean hasToMethod(Class> targetClass, Class> sourceClass) {
- return getToMethod(targetClass, sourceClass) != null;
+ return (getToMethod(targetClass, sourceClass) != null);
}
static boolean hasFactoryMethod(Class> targetClass, Class> sourceClass) {
- return getFactoryMethod(targetClass, sourceClass) != null;
+ return (getFactoryMethod(targetClass, sourceClass) != null);
}
static boolean hasFactoryConstructor(Class> targetClass, Class> sourceClass) {
- return getFactoryConstructor(targetClass, sourceClass) != null;
+ return (getFactoryConstructor(targetClass, sourceClass) != null);
}
}