You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@river.apache.org by pe...@apache.org on 2014/02/22 13:17:09 UTC

svn commit: r1570829 - /river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/reggie/RegistrarImpl.java

Author: peter_firmstone
Date: Sat Feb 22 12:17:09 2014
New Revision: 1570829

URL: http://svn.apache.org/r1570829
Log:
Prevent BindException during construction of Reggie by selecting an arbitrary port if the configured port is in use, an admin can use DiscoveryAdmin to change the Unicast Discovery port later if desired.

Modified:
    river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/reggie/RegistrarImpl.java

Modified: river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/reggie/RegistrarImpl.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/reggie/RegistrarImpl.java?rev=1570829&r1=1570828&r2=1570829&view=diff
==============================================================================
--- river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/reggie/RegistrarImpl.java (original)
+++ river/jtsk/skunk/qa_refactor/trunk/src/com/sun/jini/reggie/RegistrarImpl.java Sat Feb 22 12:17:09 2014
@@ -72,7 +72,6 @@ import java.security.PrivilegedException
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Collections;
-import java.util.Comparator;
 import java.util.Enumeration;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -80,7 +79,6 @@ import java.util.LinkedList;
 import java.util.List;
 import java.util.Map;
 import java.util.NoSuchElementException;
-import java.util.Queue;
 import java.util.Random;
 import java.util.Set;
 import java.util.SortedMap;
@@ -88,17 +86,10 @@ import java.util.SortedSet;
 import java.util.TreeMap;
 import java.util.TreeSet;
 import java.util.concurrent.Callable;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentLinkedQueue;
-import java.util.concurrent.ConcurrentMap;
-import java.util.concurrent.ConcurrentSkipListMap;
 import java.util.concurrent.ConcurrentSkipListSet;
 import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Future;
-import java.util.concurrent.FutureTask;
 import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.PriorityBlockingQueue;
-import java.util.concurrent.RunnableFuture;
 import java.util.concurrent.ScheduledExecutorService;
 import java.util.concurrent.ScheduledThreadPoolExecutor;
 import java.util.concurrent.ThreadPoolExecutor;
@@ -150,19 +141,13 @@ import net.jini.jeri.BasicILFactory;
 import net.jini.jeri.BasicJeriExporter;
 import net.jini.jeri.tcp.TcpServerEndpoint;
 import net.jini.lookup.JoinManager;
-import net.jini.lookup.ServiceDiscoveryManager;
 import net.jini.lookup.entry.ServiceInfo;
 import net.jini.security.BasicProxyPreparer;
 import net.jini.security.ProxyPreparer;
 import net.jini.security.TrustVerifier;
 import net.jini.security.proxytrust.ServerProxyTrust;
-import org.apache.river.api.util.FutureObserver;
-import org.apache.river.api.util.FutureObserver.ObservableFuture;
 import org.apache.river.api.util.Startable;
-import org.apache.river.impl.thread.ExtensibleExecutorService;
-import org.apache.river.impl.thread.ExtensibleExecutorService.RunnableFutureFactory;
 import org.apache.river.impl.thread.NamedThreadFactory;
-import org.apache.river.impl.thread.ObservableFutureTask;
 import org.apache.river.impl.thread.SynchronousExecutors;
 
 /**
@@ -2776,10 +2761,10 @@ class RegistrarImpl implements Registrar
                     logger.log(Level.INFO, "failed to bind to port " + port, e);
                     listen = reggie.serverSocketFactory.createServerSocket(0);
                     ephemeral = true;
-                    port = listen.getLocalPort();
-                    logger.log(Level.INFO, "bound to ephemeral port {0}", port);
                 }
 	    }
+            port = listen.getLocalPort();
+            logger.log(Level.INFO, "bound to ephemeral port {0}", port);
             this.listen = listen;
 	    this.port = port;
             if (ephemeral) reggie.unicastPort = port;