diff --git a/library/jms/forage-jms-common/src/main/java/io/kaoto/forage/jms/common/ForageConnectionFactory.java b/library/jms/forage-jms-common/src/main/java/io/kaoto/forage/jms/common/ForageConnectionFactory.java deleted file mode 100644 index 99b019c3c..000000000 --- a/library/jms/forage-jms-common/src/main/java/io/kaoto/forage/jms/common/ForageConnectionFactory.java +++ /dev/null @@ -1,5 +0,0 @@ -package io.kaoto.forage.jms.common; - -import jakarta.jms.ConnectionFactory; - -public record ForageConnectionFactory(ConnectionFactory connectionFactory) {} diff --git a/library/jms/forage-jms/src/main/java/io/kaoto/forage/jms/ConnectionFactoryBeanFactory.java b/library/jms/forage-jms/src/main/java/io/kaoto/forage/jms/ConnectionFactoryBeanFactory.java index 456bcad9f..3a0e4fa3c 100644 --- a/library/jms/forage-jms/src/main/java/io/kaoto/forage/jms/ConnectionFactoryBeanFactory.java +++ b/library/jms/forage-jms/src/main/java/io/kaoto/forage/jms/ConnectionFactoryBeanFactory.java @@ -25,7 +25,6 @@ import io.kaoto.forage.core.util.config.ConfigStore; import io.kaoto.forage.jms.common.ConnectionFactoryCommonExportHelper; import io.kaoto.forage.jms.common.ConnectionFactoryConfig; -import io.kaoto.forage.jms.common.ForageConnectionFactory; @ForageFactory( value = "JMS Connection", @@ -130,8 +129,12 @@ public void configure() { for (String name : prefixes) { if (camelContext.getRegistry().lookupByNameAndType(name, ConnectionFactory.class) == null) { ConnectionFactoryConfig cfConfig = new ConnectionFactoryConfig(name); - ForageConnectionFactory forageConnectionFactory = newConnectionFactory(cfConfig, name); - camelContext.getRegistry().bind(name, forageConnectionFactory.connectionFactory()); + ConnectionFactory connectionFactory = newConnectionFactory(cfConfig, name); + if (connectionFactory != null) { + camelContext.getRegistry().bind(name, connectionFactory); + } else { + LOG.warn("Skipping binding for '{}' because ConnectionFactory creation returned null", name); + } } } } else { @@ -141,11 +144,8 @@ public void configure() { final List> providers = findProviders(ConnectionFactoryProvider.class); if (providers.size() == 1) { - ForageConnectionFactory forageConnectionFactory = - doCreateConnectionFactory(providers.get(0), null); - camelContext - .getRegistry() - .bind(DEFAULT_CONNECTION_FACTORY, forageConnectionFactory.connectionFactory()); + ConnectionFactory connectionFactory = doCreateConnectionFactory(providers.get(0), null); + camelContext.getRegistry().bind(DEFAULT_CONNECTION_FACTORY, connectionFactory); } else { throw new IllegalArgumentException( "No ConnectionFactory implementation is present in the classpath"); @@ -157,7 +157,7 @@ public void configure() { } } - private synchronized ForageConnectionFactory newConnectionFactory( + private synchronized ConnectionFactory newConnectionFactory( ConnectionFactoryConfig connectionFactoryConfig, String name) { final String connectionFactoryProviderClass = ConnectionFactoryCommonExportHelper.transformJmsKindIntoProviderClass( @@ -178,10 +178,10 @@ private synchronized ForageConnectionFactory newConnectionFactory( return doCreateConnectionFactory(connectionFactoryProvider, name); } - private ForageConnectionFactory doCreateConnectionFactory( + private ConnectionFactory doCreateConnectionFactory( ServiceLoader.Provider provider, String name) { final ConnectionFactoryProvider connectionFactoryProvider = provider.get(); - return new ForageConnectionFactory(connectionFactoryProvider.create(name)); + return connectionFactoryProvider.create(name); } @Override