This is an automated email from the ASF dual-hosted git repository. gnodet pushed a commit to branch CAMEL-23214-port-misc in repository https://gitbox.apache.org/repos/asf/camel.git
commit bc342c5130dcdfefc9217c9e7e354cbf9ed4f2c3 Author: Guillaume Nodet <[email protected]> AuthorDate: Fri Mar 20 07:50:16 2026 +0100 CAMEL-23214: Fix try-with-resources anti-pattern in port migration Co-Authored-By: Claude Opus 4.6 <[email protected]> --- .../camel/component/avro/AvroTestSupport.java | 23 +++++++++++++--------- .../camel/service/lra/AbstractLRATestSupport.java | 10 +++------- .../component/milo/AbstractMiloServerTest.java | 17 ++++++---------- .../servlet/ServletCamelRouterTestSupport.java | 7 ++++--- .../component/ssh/SshComponentTestSupport.java | 7 ++++--- .../component/whatsapp/WhatsAppWebhookTest.java | 4 ---- 6 files changed, 31 insertions(+), 37 deletions(-) diff --git a/components/camel-avro-rpc/camel-avro-rpc-component/src/test/java/org/apache/camel/component/avro/AvroTestSupport.java b/components/camel-avro-rpc/camel-avro-rpc-component/src/test/java/org/apache/camel/component/avro/AvroTestSupport.java index 69f80301ad12..a4fb2b7263ea 100644 --- a/components/camel-avro-rpc/camel-avro-rpc-component/src/test/java/org/apache/camel/component/avro/AvroTestSupport.java +++ b/components/camel-avro-rpc/camel-avro-rpc-component/src/test/java/org/apache/camel/component/avro/AvroTestSupport.java @@ -19,18 +19,23 @@ package org.apache.camel.component.avro; import org.apache.camel.CamelContext; import org.apache.camel.test.AvailablePortFinder; import org.apache.camel.test.junit6.CamelTestSupport; +import org.junit.jupiter.api.extension.RegisterExtension; public class AvroTestSupport extends CamelTestSupport { - protected int port = 9100; - protected int avroPort = setupFreePort("avroport"); - protected int avroPortReflection = setupFreePort("avroPortReflection"); + @RegisterExtension + AvailablePortFinder.Port avroPortHolder = AvailablePortFinder.find(); + @RegisterExtension + AvailablePortFinder.Port avroPortReflectionHolder = AvailablePortFinder.find(); - public int setupFreePort(String name) { - try (AvailablePortFinder.Port p = AvailablePortFinder.find()) { - port = p.getPort(); - } - System.setProperty(name, String.valueOf(port)); - return port; + protected int avroPort; + protected int avroPortReflection; + + @Override + protected void doPreSetup() throws Exception { + avroPort = avroPortHolder.getPort(); + avroPortReflection = avroPortReflectionHolder.getPort(); + System.setProperty("avroport", String.valueOf(avroPort)); + System.setProperty("avroPortReflection", String.valueOf(avroPortReflection)); } @Override diff --git a/components/camel-lra/src/test/java/org/apache/camel/service/lra/AbstractLRATestSupport.java b/components/camel-lra/src/test/java/org/apache/camel/service/lra/AbstractLRATestSupport.java index f5030cf5eabe..fa7604767b88 100644 --- a/components/camel-lra/src/test/java/org/apache/camel/service/lra/AbstractLRATestSupport.java +++ b/components/camel-lra/src/test/java/org/apache/camel/service/lra/AbstractLRATestSupport.java @@ -47,7 +47,8 @@ public abstract class AbstractLRATestSupport extends CamelTestSupport { @RegisterExtension static MicroprofileLRAService service = MicroprofileLRAServiceFactory.createService(); - private Integer serverPort; + @RegisterExtension + AvailablePortFinder.Port serverPortHolder = AvailablePortFinder.find(); private int activeLRAs; @@ -106,11 +107,6 @@ public abstract class AbstractLRATestSupport extends CamelTestSupport { } protected int getServerPort() { - if (serverPort == null) { - try (AvailablePortFinder.Port p = AvailablePortFinder.find()) { - serverPort = p.getPort(); - } - } - return serverPort; + return serverPortHolder.getPort(); } } diff --git a/components/camel-milo/src/test/java/org/apache/camel/component/milo/AbstractMiloServerTest.java b/components/camel-milo/src/test/java/org/apache/camel/component/milo/AbstractMiloServerTest.java index 119df3efc6fb..e9d13236b2cb 100644 --- a/components/camel-milo/src/test/java/org/apache/camel/component/milo/AbstractMiloServerTest.java +++ b/components/camel-milo/src/test/java/org/apache/camel/component/milo/AbstractMiloServerTest.java @@ -30,6 +30,7 @@ import org.apache.camel.test.AvailablePortFinder; import org.apache.camel.test.junit6.CamelTestSupport; import org.eclipse.milo.opcua.stack.core.security.SecurityPolicy; import org.eclipse.milo.opcua.stack.core.types.builtin.DataValue; +import org.junit.jupiter.api.extension.RegisterExtension; import org.opentest4j.AssertionFailedError; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -43,17 +44,11 @@ public abstract class AbstractMiloServerTest extends CamelTestSupport { private static final Logger LOG = LoggerFactory.getLogger(AbstractMiloServerTest.class); - private int serverPort; - - @Override - protected void doPreSetup() throws Exception { - try (AvailablePortFinder.Port port = AvailablePortFinder.find()) { - this.serverPort = port.getPort(); - } - } + @RegisterExtension + AvailablePortFinder.Port serverPortHolder = AvailablePortFinder.find(); public int getServerPort() { - return this.serverPort; + return serverPortHolder.getPort(); } protected boolean isAddServer() { @@ -71,7 +66,7 @@ public abstract class AbstractMiloServerTest extends CamelTestSupport { return uri; } - return uri.replace("@@port@@", Integer.toString(this.serverPort)); + return uri.replace("@@port@@", Integer.toString(getServerPort())); } public static void testBody(final AssertionClause clause, final Consumer<DataValue> valueConsumer) { @@ -113,7 +108,7 @@ public abstract class AbstractMiloServerTest extends CamelTestSupport { protected void configureMiloServer(final MiloServerComponent server) throws Exception { server.setBindAddresses("localhost"); - server.setPort(this.serverPort); + server.setPort(getServerPort()); server.setUserAuthenticationCredentials("foo:bar,foo2:bar2"); server.setUsernameSecurityPolicyUri(SecurityPolicy.None); server.setSecurityPoliciesById("None"); diff --git a/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/ServletCamelRouterTestSupport.java b/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/ServletCamelRouterTestSupport.java index 0561e712a405..865dd1c1fc60 100644 --- a/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/ServletCamelRouterTestSupport.java +++ b/components/camel-servlet/src/test/java/org/apache/camel/component/servlet/ServletCamelRouterTestSupport.java @@ -40,20 +40,21 @@ import org.apache.camel.test.AvailablePortFinder; import org.apache.camel.test.junit6.CamelTestSupport; import org.apache.camel.util.IOHelper; import org.apache.camel.util.ObjectHelper; +import org.junit.jupiter.api.extension.RegisterExtension; public class ServletCamelRouterTestSupport extends CamelTestSupport { public static final String CONTEXT = "/mycontext"; protected String contextUrl; + @RegisterExtension + AvailablePortFinder.Port portHolder = AvailablePortFinder.find(); protected int port; protected DeploymentManager manager; protected Undertow server; @Override public void setupResources() throws Exception { - try (AvailablePortFinder.Port p = AvailablePortFinder.find()) { - port = p.getPort(); - } + port = portHolder.getPort(); DeploymentInfo servletBuilder = getDeploymentInfo(); manager = Servlets.newContainer().addDeployment(servletBuilder); manager.deploy(); diff --git a/components/camel-ssh/src/test/java/org/apache/camel/component/ssh/SshComponentTestSupport.java b/components/camel-ssh/src/test/java/org/apache/camel/component/ssh/SshComponentTestSupport.java index 8eaaeeee6123..5072f0766d93 100644 --- a/components/camel-ssh/src/test/java/org/apache/camel/component/ssh/SshComponentTestSupport.java +++ b/components/camel-ssh/src/test/java/org/apache/camel/component/ssh/SshComponentTestSupport.java @@ -23,16 +23,17 @@ import org.apache.camel.test.AvailablePortFinder; import org.apache.camel.test.junit6.CamelTestSupport; import org.apache.sshd.common.keyprovider.FileKeyPairProvider; import org.apache.sshd.server.SshServer; +import org.junit.jupiter.api.extension.RegisterExtension; public class SshComponentTestSupport extends CamelTestSupport { + @RegisterExtension + AvailablePortFinder.Port portHolder = AvailablePortFinder.find(); protected SshServer sshd; protected int port; @Override public void doPreSetup() throws Exception { - try (AvailablePortFinder.Port p = AvailablePortFinder.find()) { - port = p.getPort(); - } + port = portHolder.getPort(); sshd = SshServer.setUpDefaultServer(); sshd.setPort(port); diff --git a/components/camel-whatsapp/src/test/java/org/apache/camel/component/whatsapp/WhatsAppWebhookTest.java b/components/camel-whatsapp/src/test/java/org/apache/camel/component/whatsapp/WhatsAppWebhookTest.java index a07693a639fc..7b34a56d8b36 100644 --- a/components/camel-whatsapp/src/test/java/org/apache/camel/component/whatsapp/WhatsAppWebhookTest.java +++ b/components/camel-whatsapp/src/test/java/org/apache/camel/component/whatsapp/WhatsAppWebhookTest.java @@ -87,10 +87,6 @@ public class WhatsAppWebhookTest extends WhatsAppTestSupport { Assertions.assertThat(mock.getExchanges().get(0).getIn().getBody(String.class)).contains("\"type\": \"text\""); } - @Override - protected void doPreSetup() { - } - protected WhatsAppApiConfig getWhatsAppApiConfig() { return WhatsAppApiConfig.mock(port.getPort()); }
