Merge branch '1.5.x'
This commit is contained in:
commit
36ea2ee87b
|
@ -166,17 +166,24 @@ public class AutoConfigureAnnotationProcessor extends AbstractProcessor {
|
|||
Object value = entry.getValue().getValue();
|
||||
if (value instanceof List) {
|
||||
for (AnnotationValue annotationValue : (List<AnnotationValue>) value) {
|
||||
result.add(annotationValue.getValue());
|
||||
result.add(processValue(annotationValue.getValue()));
|
||||
}
|
||||
}
|
||||
else {
|
||||
result.add(value);
|
||||
result.add(processValue(value));
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private Object processValue(Object value) {
|
||||
if (value instanceof DeclaredType) {
|
||||
return getQualifiedName(((DeclaredType) value).asElement());
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
private String getQualifiedName(Element element) {
|
||||
if (element != null) {
|
||||
TypeElement enclosingElement = getEnclosingTypeElement(element.asType());
|
||||
|
|
|
@ -50,12 +50,12 @@ public class AutoConfigureAnnotationProcessorTests {
|
|||
@Test
|
||||
public void annotatedClass() throws Exception {
|
||||
Properties properties = compile(TestClassConfiguration.class);
|
||||
System.out.println(properties);
|
||||
assertThat(properties).hasSize(3);
|
||||
assertThat(properties).containsEntry(
|
||||
"org.springframework.boot.autoconfigureprocessor."
|
||||
+ "TestClassConfiguration.ConditionalOnClass",
|
||||
"java.io.InputStream,java.io.OutputStream");
|
||||
"java.io.InputStream,org.springframework.boot.autoconfigureprocessor."
|
||||
+ "TestClassConfiguration$Nested");
|
||||
assertThat(properties).containsKey(
|
||||
"org.springframework.boot.autoconfigureprocessor.TestClassConfiguration");
|
||||
assertThat(properties).containsKey(
|
||||
|
|
|
@ -16,15 +16,13 @@
|
|||
|
||||
package org.springframework.boot.autoconfigureprocessor;
|
||||
|
||||
import java.io.OutputStream;
|
||||
|
||||
/**
|
||||
* Test configuration with an annotated class.
|
||||
*
|
||||
* @author Madhura Bhave
|
||||
*/
|
||||
@TestConfiguration
|
||||
@TestConditionalOnClass(name = "java.io.InputStream", value = OutputStream.class)
|
||||
@TestConditionalOnClass(name = "java.io.InputStream", value = TestClassConfiguration.Nested.class)
|
||||
public class TestClassConfiguration {
|
||||
|
||||
@TestAutoConfigureOrder
|
||||
|
|
Loading…
Reference in New Issue