Author: gnodet
Date: Tue Jun  5 06:17:40 2012
New Revision: 1346252

URL: http://svn.apache.org/viewvc?rev=1346252&view=rev
Log:
[SSHD-172] Provide a way to access the list of active sessions from the server

Modified:
    mina/sshd/trunk/sshd-core/src/main/java/org/apache/sshd/SshServer.java

Modified: mina/sshd/trunk/sshd-core/src/main/java/org/apache/sshd/SshServer.java
URL: 
http://svn.apache.org/viewvc/mina/sshd/trunk/sshd-core/src/main/java/org/apache/sshd/SshServer.java?rev=1346252&r1=1346251&r2=1346252&view=diff
==============================================================================
--- mina/sshd/trunk/sshd-core/src/main/java/org/apache/sshd/SshServer.java 
(original)
+++ mina/sshd/trunk/sshd-core/src/main/java/org/apache/sshd/SshServer.java Tue 
Jun  5 06:17:40 2012
@@ -389,12 +389,7 @@ public class SshServer extends AbstractF
         if (acceptor != null) {
             acceptor.setCloseOnDeactivation(false);
             acceptor.unbind();
-            for (IoSession ioSession : acceptor.getManagedSessions().values()) 
{
-                AbstractSession session = 
AbstractSession.getSession(ioSession, true);
-                if (session != null) {
-                    sessions.add(session);
-                }
-            }
+            sessions = getActiveSessions();
         }
         final CountDownLatch latch = new CountDownLatch(sessions.size());
         SshFutureListener<CloseFuture> listener = new 
SshFutureListener<CloseFuture>() {
@@ -418,6 +413,20 @@ public class SshServer extends AbstractF
         }
     }
 
+    /**
+     * Obtain the list of active sessions.
+     */
+    public List<AbstractSession> getActiveSessions() {
+        List<AbstractSession> sessions = new ArrayList<AbstractSession>();
+        for (IoSession ioSession : acceptor.getManagedSessions().values()) {
+            AbstractSession session = AbstractSession.getSession(ioSession, 
true);
+            if (session != null) {
+                sessions.add(session);
+            }
+        }
+        return sessions;
+    }
+
     protected IoAcceptor createAcceptor() {
         return new NioSocketAcceptor(getNioWorkers());
     }


Reply via email to