Browse Source

Polishing

pull/22521/head
Juergen Hoeller 7 years ago
parent
commit
0b0e2b16ed
  1. 4
      spring-core/src/main/java/org/springframework/core/annotation/AnnotationAttributes.java
  2. 5
      spring-core/src/main/java/org/springframework/core/type/classreading/AnnotationReadingVisitorUtils.java
  3. 4
      spring-core/src/test/java/org/springframework/core/annotation/AnnotationAttributesTests.java

4
spring-core/src/main/java/org/springframework/core/annotation/AnnotationAttributes.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2017 the original author or authors. * Copyright 2002-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -363,7 +363,7 @@ public class AnnotationAttributes extends LinkedHashMap<String, Object> {
private void assertAttributeType(String attributeName, Object attributeValue, Class<?> expectedType) { private void assertAttributeType(String attributeName, Object attributeValue, Class<?> expectedType) {
if (!expectedType.isInstance(attributeValue)) { if (!expectedType.isInstance(attributeValue)) {
throw new IllegalArgumentException(String.format( throw new IllegalArgumentException(String.format(
"Attribute '%s' is of type [%s], but [%s] was expected in attributes for annotation [%s]", "Attribute '%s' is of type %s, but %s was expected in attributes for annotation [%s]",
attributeName, attributeValue.getClass().getSimpleName(), expectedType.getSimpleName(), attributeName, attributeValue.getClass().getSimpleName(), expectedType.getSimpleName(),
this.displayName)); this.displayName));
} }

5
spring-core/src/main/java/org/springframework/core/type/classreading/AnnotationReadingVisitorUtils.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2017 the original author or authors. * Copyright 2002-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -28,6 +28,7 @@ import org.springframework.core.annotation.AnnotationAttributes;
import org.springframework.core.annotation.AnnotationUtils; import org.springframework.core.annotation.AnnotationUtils;
import org.springframework.lang.Nullable; import org.springframework.lang.Nullable;
import org.springframework.util.ClassUtils; import org.springframework.util.ClassUtils;
import org.springframework.util.CollectionUtils;
import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.ObjectUtils; import org.springframework.util.ObjectUtils;
@ -124,7 +125,7 @@ abstract class AnnotationReadingVisitorUtils {
// Get the unmerged list of attributes for the target annotation. // Get the unmerged list of attributes for the target annotation.
List<AnnotationAttributes> attributesList = attributesMap.get(annotationName); List<AnnotationAttributes> attributesList = attributesMap.get(annotationName);
if (attributesList == null || attributesList.isEmpty()) { if (CollectionUtils.isEmpty(attributesList)) {
return null; return null;
} }

4
spring-core/src/test/java/org/springframework/core/annotation/AnnotationAttributesTests.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2016 the original author or authors. * Copyright 2002-2019 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -154,7 +154,7 @@ public class AnnotationAttributesTests {
public void getEnumWithTypeMismatch() { public void getEnumWithTypeMismatch() {
attributes.put("color", "RED"); attributes.put("color", "RED");
exception.expect(IllegalArgumentException.class); exception.expect(IllegalArgumentException.class);
exception.expectMessage(containsString("Attribute 'color' is of type [String], but [Enum] was expected")); exception.expectMessage(containsString("Attribute 'color' is of type String, but Enum was expected"));
attributes.getEnum("color"); attributes.getEnum("color");
} }

Loading…
Cancel
Save