You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by rm...@apache.org on 2011/07/20 16:29:58 UTC
svn commit: r1148788 -
/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/util/NetworkUtil.java
Author: rmannibucau
Date: Wed Jul 20 14:29:58 2011
New Revision: 1148788
URL: http://svn.apache.org/viewvc?rev=1148788&view=rev
Log:
adding NetworkUtil to get at runtime an available port (can be useful in tests and maybe in core for server?)
Added:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/util/NetworkUtil.java
Added: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/util/NetworkUtil.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/util/NetworkUtil.java?rev=1148788&view=auto
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/util/NetworkUtil.java (added)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/util/NetworkUtil.java Wed Jul 20 14:29:58 2011
@@ -0,0 +1,32 @@
+package org.apache.openejb.util;
+
+import java.io.IOException;
+import java.net.ServerSocket;
+
+/**
+ * @author Romain Manni-Bucau
+ */
+public final class NetworkUtil {
+ private NetworkUtil() {
+ // no-op
+ }
+
+ /**
+ * @return a opened port or -1 if an IOException occurs.
+ */
+ public static int getAnAvailablePort() {
+ int port = -1;
+ try {
+ ServerSocket server = new ServerSocket(0);
+ port = server.getLocalPort();
+ server.close();
+ } catch (IOException e) {
+ // no-op: -1 will be returned
+ }
+ return port;
+ }
+
+ public static String getLocalAddress(String start, String end) {
+ return start + "localhost:" + getAnAvailablePort() + end;
+ }
+}