Merge branch '2.7.x' into 3.0.x

Closes gh-34070
This commit is contained in:
Moritz Halbritter 2023-02-06 10:38:57 +01:00
commit 81c8574bca
2 changed files with 5 additions and 15 deletions

View File

@ -76,14 +76,14 @@ public abstract class AbstractReactiveHealthIndicator implements ReactiveHealthI
@Override
public final Mono<Health> health() {
Mono<Health> result;
try {
result = doHealthCheck(new Health.Builder()).onErrorResume(this::handleFailure);
Health.Builder builder = new Health.Builder();
Mono<Health> result = doHealthCheck(builder).onErrorResume(this::handleFailure);
return result.doOnNext((health) -> logExceptionIfPresent(builder.getException()));
}
catch (Exception ex) {
result = handleFailure(ex);
return handleFailure(ex);
}
return result.doOnNext((health) -> logExceptionIfPresent(health.getException()));
}
private void logExceptionIfPresent(Throwable ex) {
@ -94,6 +94,7 @@ public abstract class AbstractReactiveHealthIndicator implements ReactiveHealthI
}
private Mono<Health> handleFailure(Throwable ex) {
logExceptionIfPresent(ex);
return Mono.just(new Health.Builder().down(ex).build());
}

View File

@ -20,7 +20,6 @@ import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
@ -47,7 +46,6 @@ import org.springframework.util.Assert;
* @author Christian Dupuis
* @author Phillip Webb
* @author Michael Pratt
* @author Moritz Halbritter
* @since 1.1.0
*/
@JsonInclude(Include.NON_EMPTY)
@ -57,8 +55,6 @@ public final class Health extends HealthComponent {
private final Map<String, Object> details;
private final Throwable exception;
/**
* Create a new {@link Health} instance with the specified status and details.
* @param builder the Builder to use
@ -67,13 +63,11 @@ public final class Health extends HealthComponent {
Assert.notNull(builder, "Builder must not be null");
this.status = builder.status;
this.details = Collections.unmodifiableMap(builder.details);
this.exception = builder.exception;
}
Health(Status status, Map<String, Object> details) {
this.status = status;
this.details = details;
this.exception = null;
}
/**
@ -107,11 +101,6 @@ public final class Health extends HealthComponent {
return status(getStatus()).build();
}
@JsonIgnore
Throwable getException() {
return this.exception;
}
@Override
public boolean equals(Object obj) {
if (obj == this) {