Index: chrome_release_test_status/src/dashboard/LinuxTestStatusServlet.java |
=================================================================== |
--- chrome_release_test_status/src/dashboard/LinuxTestStatusServlet.java (revision 0) |
+++ chrome_release_test_status/src/dashboard/LinuxTestStatusServlet.java (revision 0) |
@@ -0,0 +1,148 @@ |
+package mydemo; |
+ |
+import java.io.IOException; |
+import java.util.Date; |
+import java.util.List; |
+import java.util.logging.Logger; |
+import javax.jdo.PersistenceManager; |
+import javax.servlet.http.*; |
+import com.google.appengine.api.users.User; |
+import com.google.appengine.api.users.UserService; |
+import com.google.appengine.api.users.UserServiceFactory; |
+ |
+import mydemo.LinuxTestStatus; |
+import mydemo.RegisterFeature; |
+import mydemo.PMF; |
+ |
+public class LinuxTestStatusServlet extends HttpServlet { |
+ private static final Logger log = Logger.getLogger(LinuxTestStatusServlet.class.getName()); |
+ |
+ public void doPost(HttpServletRequest req, HttpServletResponse resp) |
+ throws IOException { |
+ UserService userService = UserServiceFactory.getUserService(); |
+ User user = userService.getCurrentUser(); |
+ Date date = new Date(); |
+ |
+ String[] feature_name = req.getParameterValues("feature_name"); |
+ String build_number = req.getParameter("build_number"); |
+ String buildn = req.getParameter("buildn"); |
+ String[] test_status_gb = req.getParameterValues("test_status_gb"); |
+ String[] test_status_ub = req.getParameterValues("test_status_ub"); |
+ String[] test_status_os = req.getParameterValues("test_status_os"); |
+ String[] test_status_fd = req.getParameterValues("test_status_fd"); |
+ String test_type_gb = req.getParameter("test_type_gb"); |
+ String test_type_ub = req.getParameter("test_type_ub"); |
+ String test_type_os = req.getParameter("test_type_os"); |
+ String test_type_fd = req.getParameter("test_type_fd"); |
+ String user_name = req.getParameter("user_name"); |
+ String[] notes = req.getParameterValues("notes"); |
+ String is_update = req.getParameter("update"); |
+ BuildInfo build_info = new BuildInfo(build_number, date); |
+ PersistenceManager build_pm = PMF.get().getPersistenceManager(); |
+ boolean found = false; |
+ try { |
+ if (build_number!=null) { |
+ PersistenceManager pm1 = PMF.get().getPersistenceManager(); |
+ String query1 = "select from " + BuildInfo.class.getName(); |
+ List<BuildInfo> build_val = (List<BuildInfo>) pm1.newQuery(query1).execute(); |
+ |
+ for (BuildInfo build_value : build_val) { |
+ String str_build = build_value.getBuildNumber(); |
+ if ((str_build!=null) && (str_build.equals(build_number))) { |
+ found = true; |
+ break; |
+ } |
+ } |
+ if (!found){ |
+ |
+ build_pm.makePersistent(build_info); |
+ } |
+ } |
+ } finally { |
+ build_pm.close(); |
+ } |
+ if (is_update !=null) { |
+ build_number = is_update; |
+ } |
+ if (!(build_number !=null)) { |
+ build_number = buildn; |
+ } |
+ if (build_number!=null) { |
+ for (int j=0; j<feature_name.length; j++) { |
+ |
+ String gb_tester = ""; |
+ String ub_tester = ""; |
+ String os_tester = ""; |
+ String fd_tester = ""; |
+ |
+ if (test_type_gb.equals("Goobuntu")) { |
+ test_status_gb[j] = "Not Started"; |
+ } else{ |
+ if (!test_status_gb[j].equals("Not Started")) |
+ gb_tester= user_name; |
+ } |
+ |
+ if (test_type_ub.equals("Ubuntu")) { |
+ test_status_ub[j] = "Not Started"; |
+ } else{ |
+ if (!test_status_ub[j].equals("Not Started")) |
+ ub_tester= user_name; |
+ } |
+ |
+ if (test_type_os.equals("OpenSuSe")) { |
+ test_status_os[j] = "Not Started"; |
+ } else{ |
+ if (!test_status_os[j].equals("Not Started")) |
+ os_tester= user_name; |
+ } |
+ |
+ if (test_type_fd.equals("Fedora")) { |
+ test_status_fd[j] = "Not Started"; |
+ } else{ |
+ if (!test_status_fd[j].equals("Not Started")) |
+ fd_tester= user_name; |
+ } |
+ |
+ PersistenceManager pm_update = PMF.get().getPersistenceManager(); |
+ String query = "select from " + LinuxTestStatus.class.getName() + " where build_number=='" + build_number +"' && feature_name=='" + feature_name[j]+ "'" ; |
+ List<LinuxTestStatus> linux_status = (List<LinuxTestStatus>) pm_update.newQuery(query).execute(); |
+ if (linux_status.size() > 0 ) |
+ { |
+ for (LinuxTestStatus lin_status : linux_status) { |
+ lin_status.setFeatureName(feature_name[j]); |
+ lin_status.setStatusGB(test_status_gb[j]); |
+ lin_status.setStatusUB(test_status_ub[j]); |
+ lin_status.setStatusOS(test_status_os[j]); |
+ lin_status.setStatusFD(test_status_fd[j]); |
+ lin_status.setTestTypeGB(test_type_gb); |
+ lin_status.setTestTypeUB(test_type_ub); |
+ lin_status.setTestTypeOS(test_type_os); |
+ lin_status.setTestTypeFD(test_type_fd); |
+ lin_status.setNotes(notes[j]); |
+ lin_status.setGBTester(gb_tester); |
+ lin_status.setUBTester(ub_tester ); |
+ lin_status.setOSTester(os_tester); |
+ lin_status.setFDTester(fd_tester); |
+ try { |
+ pm_update.makePersistent(lin_status); |
+ } finally { |
+ pm_update.close(); |
+ } |
+ } |
+ } |
+ else { |
+ LinuxTestStatus submit_status = new LinuxTestStatus(feature_name[j], test_status_gb[j], test_status_ub[j], test_status_os[j], test_status_fd[j], build_number, |
+ test_type_gb, test_type_ub, test_type_os, test_type_fd, notes[j], gb_tester, ub_tester, os_tester, fd_tester, date); |
+ PersistenceManager pm = PMF.get().getPersistenceManager(); |
+ try { |
+ pm.makePersistent(submit_status); |
+ } finally { |
+ pm.close(); |
+ } |
+ } |
+ } |
+ } |
+ resp.sendRedirect("/SubmitStatus-Linux.jsp"); |
+ } |
+ |
+} |