From c2c361b7fe8d302288386b3ad50f958a4103c725 Mon Sep 17 00:00:00 2001 From: Olga MaciaszekSharma Date: Tue, 30 Nov 2021 15:04:00 +0100 Subject: [PATCH] Fix error logging for CompatibilityNotMetException. Fixes gh-1048. --- .../CompatibilityNotMetException.java | 3 ++ .../configuration/VerificationResult.java | 29 +++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/spring-cloud-commons/src/main/java/org/springframework/cloud/configuration/CompatibilityNotMetException.java b/spring-cloud-commons/src/main/java/org/springframework/cloud/configuration/CompatibilityNotMetException.java index a03ccab7..c3754a1b 100644 --- a/spring-cloud-commons/src/main/java/org/springframework/cloud/configuration/CompatibilityNotMetException.java +++ b/spring-cloud-commons/src/main/java/org/springframework/cloud/configuration/CompatibilityNotMetException.java @@ -16,12 +16,14 @@ package org.springframework.cloud.configuration; +import java.util.Arrays; import java.util.List; /** * Exception thrown when the current setup is not compatible. * * @author Marcin Grzejszczak + * @author Olga Maciaszek-Sharma * @since 1.3.6 */ class CompatibilityNotMetException extends RuntimeException { @@ -29,6 +31,7 @@ class CompatibilityNotMetException extends RuntimeException { final List results; CompatibilityNotMetException(List results) { + super("Spring Cloud/ Spring Boot version compatibility checks have failed: " + Arrays.toString(results.toArray())); this.results = results; } diff --git a/spring-cloud-commons/src/main/java/org/springframework/cloud/configuration/VerificationResult.java b/spring-cloud-commons/src/main/java/org/springframework/cloud/configuration/VerificationResult.java index ee5975db..7063ec44 100644 --- a/spring-cloud-commons/src/main/java/org/springframework/cloud/configuration/VerificationResult.java +++ b/spring-cloud-commons/src/main/java/org/springframework/cloud/configuration/VerificationResult.java @@ -16,10 +16,14 @@ package org.springframework.cloud.configuration; +import java.util.Objects; + +import org.springframework.core.style.ToStringCreator; import org.springframework.util.StringUtils; /** * @author Marcin Grzejszczak + * @author Olga Maciaszek-Sharma */ final class VerificationResult { @@ -51,4 +55,29 @@ final class VerificationResult { return StringUtils.hasText(this.description) || StringUtils.hasText(this.action); } + @Override + public boolean equals(Object o) { + if (this == o) { + return true; + } + if (!(o instanceof VerificationResult)) { + return false; + } + VerificationResult that = (VerificationResult) o; + return description.equals(that.description) && action.equals(that.action); + } + + @Override + public int hashCode() { + return Objects.hash(description, action); + } + + @Override + public String toString() { + ToStringCreator toStringCreator = new ToStringCreator(this); + toStringCreator.append("description", description); + toStringCreator.append("action", action); + return toStringCreator.toString(); + } + }