Michael Blow has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/1048

Change subject: Update Jetty to Latest Released Version (9.3.11)
......................................................................

Update Jetty to Latest Released Version (9.3.11)

Change-Id: I387198865c8c44dc0d1aabe9a8eb06eb056f694b
---
M asterixdb/asterix-app/pom.xml
M asterixdb/asterix-external-data/pom.xml
M asterixdb/pom.xml
M hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/pom.xml
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/ApplicationInstallationHandler.java
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/WebServer.java
6 files changed, 77 insertions(+), 65 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/48/1048/1

diff --git a/asterixdb/asterix-app/pom.xml b/asterixdb/asterix-app/pom.xml
index be1c124..b06a03e 100644
--- a/asterixdb/asterix-app/pom.xml
+++ b/asterixdb/asterix-app/pom.xml
@@ -178,20 +178,20 @@
   <dependencies>
     <dependency>
       <groupId>javax.servlet</groupId>
-      <artifactId>servlet-api</artifactId>
+      <artifactId>javax.servlet-api</artifactId>
       <type>jar</type>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jetty</groupId>
       <artifactId>jetty-server</artifactId>
-      <version>8.0.0.RC0</version>
+      <version>9.3.11.v20160721</version>
       <type>jar</type>
       <scope>compile</scope>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jetty</groupId>
       <artifactId>jetty-servlet</artifactId>
-      <version>8.0.0.RC0</version>
+      <version>9.3.11.v20160721</version>
       <type>jar</type>
       <scope>compile</scope>
     </dependency>
diff --git a/asterixdb/asterix-external-data/pom.xml 
b/asterixdb/asterix-external-data/pom.xml
index a05af3d..d4fa801 100644
--- a/asterixdb/asterix-external-data/pom.xml
+++ b/asterixdb/asterix-external-data/pom.xml
@@ -183,7 +183,7 @@
   <dependencies>
     <dependency>
       <groupId>javax.servlet</groupId>
-      <artifactId>servlet-api</artifactId>
+      <artifactId>javax.servlet-api</artifactId>
       <type>jar</type>
     </dependency>
     <dependency>
diff --git a/asterixdb/pom.xml b/asterixdb/pom.xml
index 4fb3e37..3172cff 100644
--- a/asterixdb/pom.xml
+++ b/asterixdb/pom.xml
@@ -68,7 +68,7 @@
     <hadoop.version>2.2.0</hadoop.version>
     <junit.version>4.11</junit.version>
     <commons.io.version>2.4</commons.io.version>
-    <servlet.api.version>2.5</servlet.api.version>
+    <servlet.api.version>3.1.0</servlet.api.version>
     <json.version>20090211</json.version>
     <jacoco.version>0.7.6.201602180812</jacoco.version>
   </properties>
@@ -261,6 +261,11 @@
             </configuration>
           </execution>
         </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-dependency-plugin</artifactId>
+        <version>2.10</version>
       </plugin>
     </plugins>
     <pluginManagement>
@@ -756,7 +761,7 @@
       </dependency>
       <dependency>
         <groupId>javax.servlet</groupId>
-        <artifactId>servlet-api</artifactId>
+        <artifactId>javax.servlet-api</artifactId>
         <version>${servlet.api.version}</version>
         <type>jar</type>
       </dependency>
diff --git 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/pom.xml 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/pom.xml
index 2b59165..26b4cb6 100644
--- a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/pom.xml
+++ b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/pom.xml
@@ -41,14 +41,14 @@
     <dependency>
       <groupId>org.eclipse.jetty</groupId>
       <artifactId>jetty-server</artifactId>
-      <version>8.0.0.RC0</version>
+      <version>9.3.11.v20160721</version>
       <type>jar</type>
       <scope>compile</scope>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jetty</groupId>
       <artifactId>jetty-webapp</artifactId>
-      <version>8.0.0.RC0</version>
+      <version>9.3.11.v20160721</version>
       <type>jar</type>
       <scope>compile</scope>
     </dependency>
diff --git 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/ApplicationInstallationHandler.java
 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/ApplicationInstallationHandler.java
index aa15c38..75b7473 100755
--- 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/ApplicationInstallationHandler.java
+++ 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/ApplicationInstallationHandler.java
@@ -31,12 +31,11 @@
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
-import org.eclipse.jetty.http.HttpMethods;
-import org.eclipse.jetty.server.Request;
-import org.eclipse.jetty.server.handler.AbstractHandler;
-
 import org.apache.hyracks.control.cc.ClusterControllerService;
 import org.apache.hyracks.control.common.work.SynchronizableWork;
+import org.eclipse.jetty.http.HttpMethod;
+import org.eclipse.jetty.server.Request;
+import org.eclipse.jetty.server.handler.AbstractHandler;
 
 public class ApplicationInstallationHandler extends AbstractHandler {
     private ClusterControllerService ccs;
@@ -64,57 +63,64 @@
             String rootDir = ccs.getServerContext().getBaseDir().toString();
             final String deploymentDir = rootDir.endsWith(File.separator) ? 
rootDir + "applications/" + deployIdString
                     : rootDir + File.separator + "/applications/" + 
File.separator + deployIdString;
-            if (HttpMethods.PUT.equals(request.getMethod())) {
-                class OutputStreamGetter extends SynchronizableWork {
-                    private OutputStream os;
+            switch (HttpMethod.valueOf(request.getMethod())) {
+                case PUT: {
+                    class OutputStreamGetter extends SynchronizableWork {
+                        private OutputStream os;
 
-                    @Override
-                    protected void doRun() throws Exception {
-                        FileUtils.forceMkdir(new File(deploymentDir));
-                        String fileName = params[1];
-                        File jarFile = new File(deploymentDir, fileName);
-                        os = new FileOutputStream(jarFile);
+                        @Override
+                        protected void doRun() throws Exception {
+                            FileUtils.forceMkdir(new File(deploymentDir));
+                            String fileName = params[1];
+                            File jarFile = new File(deploymentDir, fileName);
+                            os = new FileOutputStream(jarFile);
+                        }
                     }
-                }
-                OutputStreamGetter r = new OutputStreamGetter();
-                try {
-                    ccs.getWorkQueue().scheduleAndSync(r);
-                } catch (Exception e) {
-                    throw new IOException(e);
-                }
-                try {
-                    IOUtils.copyLarge(request.getInputStream(), r.os);
-                } finally {
-                    r.os.close();
-                }
-            } else if (HttpMethods.GET.equals(request.getMethod())) {
-                class InputStreamGetter extends SynchronizableWork {
-                    private InputStream is;
-
-                    @Override
-                    protected void doRun() throws Exception {
-                        String fileName = params[1];
-                        File jarFile = new File(deploymentDir, fileName);
-                        is = new FileInputStream(jarFile);
-                    }
-                }
-                InputStreamGetter r = new InputStreamGetter();
-                try {
-                    ccs.getWorkQueue().scheduleAndSync(r);
-                } catch (Exception e) {
-                    throw new IOException(e);
-                }
-                if (r.is == null) {
-                    response.setStatus(HttpServletResponse.SC_NOT_FOUND);
-                } else {
-                    response.setContentType("application/octet-stream");
-                    response.setStatus(HttpServletResponse.SC_OK);
+                    OutputStreamGetter r = new OutputStreamGetter();
                     try {
-                        IOUtils.copyLarge(r.is, response.getOutputStream());
-                    } finally {
-                        r.is.close();
+                        ccs.getWorkQueue().scheduleAndSync(r);
+                    } catch (Exception e) {
+                        throw new IOException(e);
                     }
+                    try {
+                        IOUtils.copyLarge(request.getInputStream(), r.os);
+                    } finally {
+                        r.os.close();
+                    }
+                    break;
                 }
+                case GET: {
+                    class InputStreamGetter extends SynchronizableWork {
+                        private InputStream is;
+
+                        @Override
+                        protected void doRun() throws Exception {
+                            String fileName = params[1];
+                            File jarFile = new File(deploymentDir, fileName);
+                            is = new FileInputStream(jarFile);
+                        }
+                    }
+                    InputStreamGetter r = new InputStreamGetter();
+                    try {
+                        ccs.getWorkQueue().scheduleAndSync(r);
+                    } catch (Exception e) {
+                        throw new IOException(e);
+                    }
+                    if (r.is == null) {
+                        response.setStatus(HttpServletResponse.SC_NOT_FOUND);
+                    } else {
+                        response.setContentType("application/octet-stream");
+                        response.setStatus(HttpServletResponse.SC_OK);
+                        try {
+                            IOUtils.copyLarge(r.is, 
response.getOutputStream());
+                        } finally {
+                            r.is.close();
+                        }
+                    }
+                    break;
+                }
+                default:
+                    throw new IllegalArgumentException(request.getMethod());
             }
             baseRequest.setHandled(true);
         } catch (IOException e) {
diff --git 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/WebServer.java
 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/WebServer.java
index ac98b64..b55e65d 100644
--- 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/WebServer.java
+++ 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/web/WebServer.java
@@ -18,6 +18,11 @@
  */
 package org.apache.hyracks.control.cc.web;
 
+import java.util.EnumSet;
+import java.util.logging.Logger;
+
+import javax.servlet.DispatcherType;
+
 import org.apache.hyracks.control.cc.ClusterControllerService;
 import 
org.apache.hyracks.control.cc.adminconsole.HyracksAdminConsoleApplication;
 import org.apache.hyracks.control.cc.web.util.JSONOutputRequestHandler;
@@ -29,31 +34,27 @@
 import org.eclipse.jetty.server.Connector;
 import org.eclipse.jetty.server.Handler;
 import org.eclipse.jetty.server.Server;
+import org.eclipse.jetty.server.ServerConnector;
 import org.eclipse.jetty.server.handler.ContextHandler;
 import org.eclipse.jetty.server.handler.ContextHandlerCollection;
 import org.eclipse.jetty.server.handler.HandlerCollection;
-import org.eclipse.jetty.server.nio.SelectChannelConnector;
 import org.eclipse.jetty.servlet.DefaultServlet;
 import org.eclipse.jetty.servlet.FilterHolder;
 import org.eclipse.jetty.servlet.ServletContextHandler;
-
-import javax.servlet.DispatcherType;
-import java.util.EnumSet;
-import java.util.logging.Logger;
 
 public class WebServer {
     private final static Logger LOGGER = 
Logger.getLogger(WebServer.class.getName());
 
     private final ClusterControllerService ccs;
     private final Server server;
-    private final SelectChannelConnector connector;
+    private final ServerConnector connector;
     private final HandlerCollection handlerCollection;
 
     public WebServer(ClusterControllerService ccs) throws Exception {
         this.ccs = ccs;
         server = new Server();
 
-        connector = new SelectChannelConnector();
+        connector = new ServerConnector(server);
 
         server.setConnectors(new Connector[] { connector });
 

-- 
To view, visit https://asterix-gerrit.ics.uci.edu/1048
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I387198865c8c44dc0d1aabe9a8eb06eb056f694b
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Michael Blow <mb...@apache.org>

Reply via email to