Browse Source

Clarify that all named properties must match for @ConditionalOnProperty to match

Closes gh-40110
3.1.x
Moritz Halbritter 2 years ago
parent
commit
5510c6f61b
  1. 5
      spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/ConditionalOnProperty.java
  2. 2
      spring-boot-project/spring-boot-docs/src/docs/asciidoc/features/developing-auto-configuration.adoc

5
spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/condition/ConditionalOnProperty.java

@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
/*
* Copyright 2012-2021 the original author or authors.
* Copyright 2012-2024 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -117,6 +117,9 @@ public @interface ConditionalOnProperty { @@ -117,6 +117,9 @@ public @interface ConditionalOnProperty {
* <p>
* Use the dashed notation to specify each property, that is all lower case with a "-"
* to separate words (e.g. {@code my-long-property}).
* <p>
* If multiple names are specified, all of the properties have to pass the test for
* the condition to match.
* @return the names
*/
String[] name() default {};

2
spring-boot-project/spring-boot-docs/src/docs/asciidoc/features/developing-auto-configuration.adoc

@ -114,6 +114,8 @@ Use the `prefix` and `name` attributes to specify the property that should be ch @@ -114,6 +114,8 @@ Use the `prefix` and `name` attributes to specify the property that should be ch
By default, any property that exists and is not equal to `false` is matched.
You can also create more advanced checks by using the `havingValue` and `matchIfMissing` attributes.
If multiple names are given in the `name` attribute, all of the properties have to pass the test for the condition to match.
[[features.developing-auto-configuration.condition-annotations.resource-conditions]]

Loading…
Cancel
Save