Skip to content

Commit

Permalink
Added in Multipart parsing. Need to configure the server to parse the…
Browse files Browse the repository at this point in the history
… body. Currently only handles the actual header
  • Loading branch information
pdz10001 committed Oct 25, 2016
1 parent 467c359 commit 719859e
Show file tree
Hide file tree
Showing 4 changed files with 51 additions and 9 deletions.
8 changes: 3 additions & 5 deletions .classpath
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,6 @@
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="junit_tests"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/jre1.8.0_101">
<attributes>
<attribute name="owner.project.facets" value="java"/>
</attributes>
</classpathentry>
<classpathentry kind="con" path="org.eclipse.jst.server.core.container/org.eclipse.jst.server.tomcat.runtimeTarget/Apache Tomcat v9.0">
<attributes>
<attribute name="owner.project.facets" value="jst.web"/>
Expand All @@ -32,5 +27,8 @@
<classpathentry kind="lib" path="libs/jogl-all.jar"/>
<classpathentry kind="lib" path="libs/junit.jar"/>
<classpathentry kind="lib" path="libs/org.hamcrest.core_1.3.0.v201303031735.jar"/>
<classpathentry kind="lib" path="WebContent/WEB-INF/lib/commons-fileupload-1.3.2.jar"/>
<classpathentry kind="lib" path="WebContent/WEB-INF/lib/commons-io-2.5.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="output" path="build/classes"/>
</classpath>
2 changes: 1 addition & 1 deletion src/com/knotrenderer/model/BezierCurve.java
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ private void generateBezierCoefficients()
{
PVector vector = controlPoints[k].copy();
coefficients[k] = vector.mult((float) MathUtil.binomialCoefficientAsDouble(controlPoints.length-1, k));
System.out.println(coefficients[k]);
// System.out.println(coefficients[k]);
}
}

Expand Down
4 changes: 3 additions & 1 deletion src/com/knotrenderer/view/KnotRenderer.java
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,9 @@ public void setup()

// Curve curve = CurveLoader.loadCurveFromFile("D:/Peter/College_Grad_School/Independent_Study_Spring_2016_Cont/Knot-Renderer-Processing/Testing_Files/TJP-4th-C1-high-precision.curve");
// Curve curve = CurveLoader.loadCurveFromFile("D:/Peter/College_Grad_School/Independent_Study_Spring_2016_Cont/Knot-Renderer-Processing/Testing_Files/TJP-4_1_stick-unknot-halved-3.curve");
Curve curve = CurveLoader.loadCurveFromFile("D:/Peter/College_Grad_School/Independent_Study_Spring_2016_Cont/Knot-Renderer-Processing/Testing_Files/test.curve");
// Curve curve = CurveLoader.loadCurveFromFile("D:/Peter/College_Grad_School/Independent_Study_Spring_2016_Cont/Knot-Renderer-Processing/Testing_Files/test.curve");
Curve curve = CurveLoader.loadCurveFromFile("D:/Peter/College_Grad_School/Independent_Study_Spring_2016_Cont/Knot-Renderer-Processing/Testing_Files/TJP-C2.curve");


// Curve curve = CurveLoader.loadCurveFromFile("/Users/peterzaffetti/UC/Knot-Renderer-Processing/Testing_Files/TJP-4_1_stick-unknot.curve");
// Curve curve = CurveLoader.loadCurveFromFile("/Users/peterzaffetti/UC/Knot-Renderer-Processing/Testing_Files/test.curve");
Expand Down
46 changes: 44 additions & 2 deletions src/com/knotrenderer/web/PointGeneratorServlet.java
Original file line number Diff line number Diff line change
@@ -1,16 +1,27 @@
package com.knotrenderer.web;

import java.io.File;
import java.io.IOException;
import java.util.List;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.annotation.MultipartConfig;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;

/**
* Servlet implementation class PointGeneratorServlet
*/
@WebServlet("/PointGeneratorServlet")
@MultipartConfig
public class PointGeneratorServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

Expand All @@ -27,15 +38,46 @@ public PointGeneratorServlet() {
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
response.getWriter().append("Served at: ").append(request.getContextPath());
boolean isMultiPart = ServletFileUpload.isMultipartContent(request);
String isMultiPartString = isMultiPart ? "True" : "False";
response.getWriter().append("Serving Ice Cream at: ").append(isMultiPartString);
System.out.println("GET was called");
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
// doGet(request, response);
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if(isMultipart)
{
System.out.println("Received a Multipart request");
DiskFileItemFactory factory = new DiskFileItemFactory();

// Configure a repository (to ensure a secure temp location is used)
ServletContext servletContext = this.getServletConfig().getServletContext();
File repository = (File) servletContext.getAttribute("javax.servlet.context.tempdir");
factory.setRepository(repository);

// Create a new file upload handler
ServletFileUpload upload = new ServletFileUpload(factory);

List<FileItem> items = null;
// Parse the request
try {
items = upload.parseRequest(request);
} catch (FileUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("Multipart items: " + items);

}
System.out.println("POST was called");
request.getParameterMap();
doGet(request,response);
}

}

0 comments on commit 719859e

Please sign in to comment.