From 0b3d67d33b05111a5a923762f578a8c666dc3679 Mon Sep 17 00:00:00 2001 From: Sebastian Kirsch Date: Fri, 10 Jul 2026 16:14:45 +0200 Subject: [PATCH 1/4] Change condition for SolaceMeterConfiguration from MeterRegistry class to bean Fixes #497 --- .../cloud/stream/binder/config/SolaceMeterConfiguration.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java b/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java index a27ff5ddf..d3e0ec62d 100644 --- a/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java +++ b/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java @@ -3,12 +3,12 @@ import com.solace.spring.cloud.stream.binder.meter.SolaceMessageMeterBinder; import com.solace.spring.cloud.stream.binder.meter.SolaceMeterAccessor; import io.micrometer.core.instrument.MeterRegistry; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration(proxyBeanMethods = false) -@ConditionalOnClass(MeterRegistry.class) +@ConditionalOnBean(MeterRegistry.class) public final class SolaceMeterConfiguration { @Bean SolaceMessageMeterBinder solaceMessageMeterBinder() { From ad483b4a9981eb77bc1a3a789db347b645fb267a Mon Sep 17 00:00:00 2001 From: Sebastian Kirsch Date: Thu, 16 Jul 2026 09:01:14 +0200 Subject: [PATCH 2/4] Fix failing build --- .../stream/binder/config/SolaceMeterConfiguration.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java b/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java index d3e0ec62d..c61891036 100644 --- a/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java +++ b/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java @@ -3,12 +3,18 @@ import com.solace.spring.cloud.stream.binder.meter.SolaceMessageMeterBinder; import com.solace.spring.cloud.stream.binder.meter.SolaceMeterAccessor; import io.micrometer.core.instrument.MeterRegistry; -import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; +import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.boot.micrometer.metrics.autoconfigure.CompositeMeterRegistryAutoConfiguration; +import org.springframework.boot.micrometer.metrics.autoconfigure.MetricsAutoConfiguration; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +@AutoConfiguration(after = { MetricsAutoConfiguration.class, CompositeMeterRegistryAutoConfiguration.class }) @Configuration(proxyBeanMethods = false) @ConditionalOnBean(MeterRegistry.class) +@ConditionalOnClass(MeterRegistry.class) public final class SolaceMeterConfiguration { @Bean SolaceMessageMeterBinder solaceMessageMeterBinder() { From 7eb2fcf6afd5991f8cc322f7f132fc3e2b6e0ef4 Mon Sep 17 00:00:00 2001 From: Sebastian Kirsch Date: Thu, 16 Jul 2026 09:11:44 +0200 Subject: [PATCH 3/4] Fix import --- .../cloud/stream/binder/config/SolaceMeterConfiguration.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java b/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java index c61891036..2ac27a59e 100644 --- a/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java +++ b/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java @@ -4,8 +4,8 @@ import com.solace.spring.cloud.stream.binder.meter.SolaceMeterAccessor; import io.micrometer.core.instrument.MeterRegistry; import org.springframework.boot.autoconfigure.AutoConfiguration; +import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; -import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.boot.micrometer.metrics.autoconfigure.CompositeMeterRegistryAutoConfiguration; import org.springframework.boot.micrometer.metrics.autoconfigure.MetricsAutoConfiguration; import org.springframework.context.annotation.Bean; From b23298a2dfb87d097697f1ac1b8abfb433d1a73b Mon Sep 17 00:00:00 2001 From: Jeffrey D <11084623+Nephery@users.noreply.github.com> Date: Wed, 29 Jul 2026 11:50:29 -0400 Subject: [PATCH 4/4] Remove superfluous Configuration annotation --- .../cloud/stream/binder/config/SolaceMeterConfiguration.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java b/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java index 2ac27a59e..5c71ff34e 100644 --- a/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java +++ b/solace-spring-cloud-stream-binder/solace-spring-cloud-stream-binder/src/main/java/com/solace/spring/cloud/stream/binder/config/SolaceMeterConfiguration.java @@ -9,10 +9,8 @@ import org.springframework.boot.micrometer.metrics.autoconfigure.CompositeMeterRegistryAutoConfiguration; import org.springframework.boot.micrometer.metrics.autoconfigure.MetricsAutoConfiguration; import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; @AutoConfiguration(after = { MetricsAutoConfiguration.class, CompositeMeterRegistryAutoConfiguration.class }) -@Configuration(proxyBeanMethods = false) @ConditionalOnBean(MeterRegistry.class) @ConditionalOnClass(MeterRegistry.class) public final class SolaceMeterConfiguration {