|
|
|
@ -73,6 +73,12 @@ public @interface ConditionalOnMissingBean { |
|
|
|
* The class types of beans that should be checked. The condition matches when no bean |
|
|
|
* The class types of beans that should be checked. The condition matches when no bean |
|
|
|
* of each class specified is contained in the {@link BeanFactory}. Beans that are not |
|
|
|
* of each class specified is contained in the {@link BeanFactory}. Beans that are not |
|
|
|
* autowire candidates or that are not default candidates are ignored. |
|
|
|
* autowire candidates or that are not default candidates are ignored. |
|
|
|
|
|
|
|
* <p> |
|
|
|
|
|
|
|
* Since this annotation is parsed by loading class bytecode, it is safe to specify |
|
|
|
|
|
|
|
* classes here that may ultimately not be on the classpath, only if this annotation |
|
|
|
|
|
|
|
* is directly on the affected component and <b>not</b> if this annotation is used as |
|
|
|
|
|
|
|
* a composed, meta-annotation. In order to use this annotation as a meta-annotation, |
|
|
|
|
|
|
|
* only use the {@link #type} attribute. |
|
|
|
* @return the class types of beans to check |
|
|
|
* @return the class types of beans to check |
|
|
|
* @see Bean#autowireCandidate() |
|
|
|
* @see Bean#autowireCandidate() |
|
|
|
* @see BeanDefinition#isAutowireCandidate |
|
|
|
* @see BeanDefinition#isAutowireCandidate |
|
|
|
@ -95,6 +101,12 @@ public @interface ConditionalOnMissingBean { |
|
|
|
|
|
|
|
|
|
|
|
/** |
|
|
|
/** |
|
|
|
* The class types of beans that should be ignored when identifying matching beans. |
|
|
|
* The class types of beans that should be ignored when identifying matching beans. |
|
|
|
|
|
|
|
* <p> |
|
|
|
|
|
|
|
* Since this annotation is parsed by loading class bytecode, it is safe to specify |
|
|
|
|
|
|
|
* classes here that may ultimately not be on the classpath, only if this annotation |
|
|
|
|
|
|
|
* is directly on the affected component and <b>not</b> if this annotation is used as |
|
|
|
|
|
|
|
* a composed, meta-annotation. In order to use this annotation as a meta-annotation, |
|
|
|
|
|
|
|
* only use the {@link #ignoredType} attribute. |
|
|
|
* @return the class types of beans to ignore |
|
|
|
* @return the class types of beans to ignore |
|
|
|
* @since 1.2.5 |
|
|
|
* @since 1.2.5 |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
@ -113,6 +125,11 @@ public @interface ConditionalOnMissingBean { |
|
|
|
* when each annotation specified is missing from all beans in the |
|
|
|
* when each annotation specified is missing from all beans in the |
|
|
|
* {@link BeanFactory}. Beans that are not autowire candidates or that are not default |
|
|
|
* {@link BeanFactory}. Beans that are not autowire candidates or that are not default |
|
|
|
* candidates are ignored. |
|
|
|
* candidates are ignored. |
|
|
|
|
|
|
|
* <p> |
|
|
|
|
|
|
|
* Since this annotation is parsed by loading class bytecode, it is safe to specify |
|
|
|
|
|
|
|
* classes here that may ultimately not be on the classpath, only if this annotation |
|
|
|
|
|
|
|
* is directly on the affected component and <b>not</b> if this annotation is used as |
|
|
|
|
|
|
|
* a composed, meta-annotation. |
|
|
|
* @return the class-level annotation types to check |
|
|
|
* @return the class-level annotation types to check |
|
|
|
* @see Bean#autowireCandidate() |
|
|
|
* @see Bean#autowireCandidate() |
|
|
|
* @see BeanDefinition#isAutowireCandidate |
|
|
|
* @see BeanDefinition#isAutowireCandidate |
|
|
|
@ -140,6 +157,11 @@ public @interface ConditionalOnMissingBean { |
|
|
|
* parameters. For example, an annotation declaring {@code value=Name.class} and |
|
|
|
* parameters. For example, an annotation declaring {@code value=Name.class} and |
|
|
|
* {@code parameterizedContainer=NameRegistration.class} would detect both |
|
|
|
* {@code parameterizedContainer=NameRegistration.class} would detect both |
|
|
|
* {@code Name} and {@code NameRegistration<Name>}. |
|
|
|
* {@code Name} and {@code NameRegistration<Name>}. |
|
|
|
|
|
|
|
* <p> |
|
|
|
|
|
|
|
* Since this annotation is parsed by loading class bytecode, it is safe to specify |
|
|
|
|
|
|
|
* classes here that may ultimately not be on the classpath, only if this annotation |
|
|
|
|
|
|
|
* is directly on the affected component and <b>not</b> if this annotation is used as |
|
|
|
|
|
|
|
* a composed, meta-annotation. |
|
|
|
* @return the container types |
|
|
|
* @return the container types |
|
|
|
* @since 2.1.0 |
|
|
|
* @since 2.1.0 |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
|