Author: norman
Date: Tue Dec 14 12:23:25 2010
New Revision: 1049062

URL: http://svn.apache.org/viewvc?rev=1049062&view=rev
Log:
Allow to start/stop the servers via JMX. This basicly means you are able to 
bind/unbind the address. See JAMES-1057

Modified:
    
james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/ServerMBean.java
    
james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/netty/AbstractConfigurableAsyncServer.java

Modified: 
james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/ServerMBean.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/ServerMBean.java?rev=1049062&r1=1049061&r2=1049062&view=diff
==============================================================================
--- 
james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/ServerMBean.java
 (original)
+++ 
james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/ServerMBean.java
 Tue Dec 14 12:23:25 2010
@@ -69,4 +69,25 @@ public interface ServerMBean {
      * 
      */  
     public String getServiceType();
+    
+    /**
+     * Return true if the server is started, which basicly means it is bound 
to a address and accept connections
+     * 
+     * @return started
+     */
+    public boolean isStarted();
+    
+    /**
+     * Start the server
+     * 
+     * @return start
+     */
+    public boolean start();
+    
+    /**
+     * Stop the server
+     * 
+     * @return stop
+     */
+    public boolean stop();
 }

Modified: 
james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/netty/AbstractConfigurableAsyncServer.java
URL: 
http://svn.apache.org/viewvc/james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/netty/AbstractConfigurableAsyncServer.java?rev=1049062&r1=1049061&r2=1049062&view=diff
==============================================================================
--- 
james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/netty/AbstractConfigurableAsyncServer.java
 (original)
+++ 
james/server/trunk/netty-socket/src/main/java/org/apache/james/socket/netty/AbstractConfigurableAsyncServer.java
 Tue Dec 14 12:23:25 2010
@@ -257,7 +257,7 @@ public abstract class AbstractConfigurab
             preInit();
             buildSSLContext();
 
-            start();
+            bind();
         }
     }
 
@@ -265,7 +265,7 @@ public abstract class AbstractConfigurab
     public final void destroy() {
         getLogger().info("Dispose " + getServiceType());
         if (isEnabled()) {
-            stop();
+            unbind();
         }
     }
     
@@ -477,4 +477,35 @@ public abstract class AbstractConfigurab
         return enabledCipherSuites;
     }
 
+    /*
+     * (non-Javadoc)
+     * @see org.apache.james.socket.ServerMBean#isStarted()
+     */
+    public boolean isStarted() {
+        return isBound();
+    }
+
+    /*
+     * (non-Javadoc)
+     * @see org.apache.james.socket.ServerMBean#start()
+     */
+    public boolean start() {
+        try {
+            bind();
+        } catch (Exception e) {
+            logger.error("Unable to start server");
+            return false;
+        }
+        return true;
+    }
+
+    /*
+     * (non-Javadoc)
+     * @see org.apache.james.socket.ServerMBean#stop()
+     */
+    public boolean stop() {
+        unbind();
+        return true;
+    }
+
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to