|
1 | 1 | /*
|
2 |
| - * Copyright 2012-2024 the original author or authors. |
| 2 | + * Copyright 2012-2025 the original author or authors. |
3 | 3 | *
|
4 | 4 | * Licensed under the Apache License, Version 2.0 (the "License");
|
5 | 5 | * you may not use this file except in compliance with the License.
|
|
38 | 38 | * {@link Configuration#proxyBeanMethods() proxyBeanMethods} is always {@code false}. They
|
39 | 39 | * are located using {@link ImportCandidates}.
|
40 | 40 | * <p>
|
41 |
| - * Generally auto-configuration classes are marked as {@link Conditional @Conditional} |
42 |
| - * (most often using {@link ConditionalOnClass @ConditionalOnClass} and |
| 41 | + * Generally, auto-configuration classes are top-level classes that are marked as |
| 42 | + * {@link Conditional @Conditional} (most often using |
| 43 | + * {@link ConditionalOnClass @ConditionalOnClass} and |
43 | 44 | * {@link ConditionalOnMissingBean @ConditionalOnMissingBean} annotations).
|
44 | 45 | *
|
45 | 46 | * @author Moritz Halbritter
|
|
76 | 77 | String value() default "";
|
77 | 78 |
|
78 | 79 | /**
|
79 |
| - * The auto-configure classes that should have not yet been applied. |
| 80 | + * The auto-configuration classes that should have not yet been applied. |
80 | 81 | * @return the classes
|
81 | 82 | */
|
82 | 83 | @AliasFor(annotation = AutoConfigureBefore.class, attribute = "value")
|
83 | 84 | Class<?>[] before() default {};
|
84 | 85 |
|
85 | 86 | /**
|
86 |
| - * The names of the auto-configure classes that should have not yet been applied. |
| 87 | + * The names of the auto-configuration classes that should have not yet been applied. |
| 88 | + * In the unusual case that an auto-configuration class is not a top-level class, its |
| 89 | + * name should use {@code $} to separate it from its containing class, for example |
| 90 | + * {@code com.example.Outer$NestedAutoConfiguration}. |
87 | 91 | * @return the class names
|
88 | 92 | */
|
89 | 93 | @AliasFor(annotation = AutoConfigureBefore.class, attribute = "name")
|
90 | 94 | String[] beforeName() default {};
|
91 | 95 |
|
92 | 96 | /**
|
93 |
| - * The auto-configure classes that should have already been applied. |
| 97 | + * The auto-configuration classes that should have already been applied. |
94 | 98 | * @return the classes
|
95 | 99 | */
|
96 | 100 | @AliasFor(annotation = AutoConfigureAfter.class, attribute = "value")
|
97 | 101 | Class<?>[] after() default {};
|
98 | 102 |
|
99 | 103 | /**
|
100 |
| - * The names of the auto-configure classes that should have already been applied. |
| 104 | + * The names of the auto-configuration classes that should have already been applied. |
| 105 | + * In the unusual case that an auto-configuration class is not a top-level class, its |
| 106 | + * class name should use {@code $} to separate it from its containing class, for |
| 107 | + * example {@code com.example.Outer$NestedAutoConfiguration}. |
101 | 108 | * @return the class names
|
102 | 109 | */
|
103 | 110 | @AliasFor(annotation = AutoConfigureAfter.class, attribute = "name")
|
|
0 commit comments