Repository: incubator-zeppelin
Updated Branches:
  refs/heads/master d0a304354 -> e9a00d65c


ZEPPELIN-155 Handle port number 0

issue described https://issues.apache.org/jira/browse/ZEPPELIN-155.
Allow websocket bind to port 0

Author: Lee moon soo <[email protected]>

Closes #144 from Leemoonsoo/ZEPPELIN-155 and squashes the following commits:

003eaee [Lee moon soo] Print correct websocket port
23ff364 [Lee moon soo] allow websocket bind to port 0


Project: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/commit/e9a00d65
Tree: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/tree/e9a00d65
Diff: http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/diff/e9a00d65

Branch: refs/heads/master
Commit: e9a00d65c9eee22d738a5a680e5877387cdc74f3
Parents: d0a3043
Author: Lee moon soo <[email protected]>
Authored: Tue Jul 7 05:32:18 2015 -0700
Committer: Lee moon soo <[email protected]>
Committed: Tue Jul 7 15:05:45 2015 -0700

----------------------------------------------------------------------
 .../java/org/apache/zeppelin/server/ZeppelinServer.java   | 10 ++++++----
 .../java/org/apache/zeppelin/socket/NotebookServer.java   |  6 ------
 .../org/apache/zeppelin/conf/ZeppelinConfiguration.java   |  8 +++++++-
 3 files changed, 13 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/e9a00d65/zeppelin-server/src/main/java/org/apache/zeppelin/server/ZeppelinServer.java
----------------------------------------------------------------------
diff --git 
a/zeppelin-server/src/main/java/org/apache/zeppelin/server/ZeppelinServer.java 
b/zeppelin-server/src/main/java/org/apache/zeppelin/server/ZeppelinServer.java
index bd93f80..403d30a 100644
--- 
a/zeppelin-server/src/main/java/org/apache/zeppelin/server/ZeppelinServer.java
+++ 
b/zeppelin-server/src/main/java/org/apache/zeppelin/server/ZeppelinServer.java
@@ -83,6 +83,7 @@ public class ZeppelinServer extends Application {
 
     jettyServer = setupJettyServer(conf);
     notebookServer = setupNotebookServer(conf);
+    notebookServer.start();
 
     // REST api
     final ServletContextHandler restApi = setupRestApiContextHandler();
@@ -92,7 +93,9 @@ public class ZeppelinServer extends Application {
     final ServletContextHandler swagger = setupSwaggerContextHandler(conf);
 
     // Web UI
-    final WebAppContext webApp = setupWebAppContext(conf);
+    LOG.info("Create zeppelin websocket on {}:{}", notebookServer.getAddress()
+        .getAddress(), notebookServer.getPort());
+    final WebAppContext webApp = setupWebAppContext(conf, 
notebookServer.getPort());
     //Below is commented since zeppelin-docs module is removed.
     //final WebAppContext webAppSwagg = setupWebAppSwagger(conf);
 
@@ -102,7 +105,6 @@ public class ZeppelinServer extends Application {
     contexts.setHandlers(new Handler[]{swagger, restApi, webApp});
     jettyServer.setHandler(contexts);
 
-    notebookServer.start();
     LOG.info("Start zeppelin server");
     jettyServer.start();
     LOG.info("Started");
@@ -254,7 +256,7 @@ public class ZeppelinServer extends Application {
   }
 
   private static WebAppContext setupWebAppContext(
-      ZeppelinConfiguration conf) {
+      ZeppelinConfiguration conf, int websocketPort) {
 
     WebAppContext webApp = new WebAppContext();
     File warPath = new File(conf.getString(ConfVars.ZEPPELIN_WAR));
@@ -270,7 +272,7 @@ public class ZeppelinServer extends Application {
     }
     // Explicit bind to root
     webApp.addServlet(
-      new ServletHolder(new AppScriptServlet(conf.getWebSocketPort())),
+      new ServletHolder(new AppScriptServlet(websocketPort)),
       "/*"
     );
     return webApp;

http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/e9a00d65/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java
----------------------------------------------------------------------
diff --git 
a/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java 
b/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java
index 659d4df..dd45d97 100644
--- 
a/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java
+++ 
b/zeppelin-server/src/main/java/org/apache/zeppelin/socket/NotebookServer.java
@@ -61,22 +61,16 @@ public class NotebookServer extends WebSocketServer 
implements
   private static final String DEFAULT_ADDR = "0.0.0.0";
   private static final int DEFAULT_PORT = 8282;
 
-  private static void creatingwebSocketServerLog(String address, int port) {
-    LOG.info("Create zeppelin websocket on {}:{}", address, port);
-  }
-
   Gson gson = new Gson();
   Map<String, List<WebSocket>> noteSocketMap = new HashMap<String, 
List<WebSocket>>();
   List<WebSocket> connectedSockets = new LinkedList<WebSocket>();
 
   public NotebookServer() {
     super(new InetSocketAddress(DEFAULT_ADDR, DEFAULT_PORT));
-    creatingwebSocketServerLog(DEFAULT_ADDR, DEFAULT_PORT);
   }
 
   public NotebookServer(String address, int port) {
     super(new InetSocketAddress(address, port));
-    creatingwebSocketServerLog(address, port);
   }
 
   private Notebook notebook() {

http://git-wip-us.apache.org/repos/asf/incubator-zeppelin/blob/e9a00d65/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java
----------------------------------------------------------------------
diff --git 
a/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java
 
b/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java
index 6934791..a56b07b 100644
--- 
a/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java
+++ 
b/zeppelin-zengine/src/main/java/org/apache/zeppelin/conf/ZeppelinConfiguration.java
@@ -273,8 +273,14 @@ public class ZeppelinConfiguration extends 
XMLConfiguration {
 
   public int getWebSocketPort() {
     int port = getInt(ConfVars.ZEPPELIN_WEBSOCKET_PORT);
+    int serverPort = getServerPort();
+
     if (port < 0) {
-      return getServerPort() + 1;
+      if (serverPort <= 0) {
+        return 0;
+      } else {
+        return serverPort + 1;
+      }
     } else {
       return port;
     }

Reply via email to