(HttpServletRequest request, HttpServletResponse response)
| 32 | private static final long serialVersionUID = -892181347446991016L; |
| 33 | |
| 34 | public void doPost (HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { |
| 35 | //Translation Stuff |
| 36 | Locale locale = new Locale(Validate.validateLanguage(request.getSession())); |
| 37 | ResourceBundle errors = ResourceBundle.getBundle("i18n.servlets.errors", locale); |
| 38 | ResourceBundle bundle = ResourceBundle.getBundle("i18n.text", locale); |
| 39 | |
| 40 | //Output Stuff |
| 41 | PrintWriter out = response.getWriter(); |
| 42 | String htmlOutput = new String(); |
| 43 | boolean success = false; |
| 44 | try |
| 45 | { |
| 46 | //Parameters From Form |
| 47 | String dbHost = request.getParameter("dbhost"); |
| 48 | String dbPort = request.getParameter("dbport"); |
| 49 | String dbUser = request.getParameter("dbuser"); |
| 50 | String dbPass = request.getParameter("dbpass"); |
| 51 | String dbAuth = request.getParameter("dbauth"); |
| 52 | String dbOverride = request.getParameter("dboverride"); |
| 53 | |
| 54 | String auth = new String(Files.readAllBytes(Paths.get(Constants.SETUP_AUTH))); |
| 55 | |
| 56 | StringBuffer dbProp = new StringBuffer(); |
| 57 | dbProp.append("databaseConnectionURL=jdbc:mysql://" + dbHost + ":" + dbPort + "/"); |
| 58 | dbProp.append("\n"); |
| 59 | dbProp.append("DriverType=org.gjt.mm.mysql.Driver"); |
| 60 | dbProp.append("\n"); |
| 61 | dbProp.append("databaseSchema=core"); |
| 62 | dbProp.append("\n"); |
| 63 | dbProp.append("databaseUsername=" + dbUser); |
| 64 | dbProp.append("\n"); |
| 65 | dbProp.append("databasePassword=" + dbPass); |
| 66 | dbProp.append("\n"); |
| 67 | |
| 68 | if (!auth.equals(dbAuth)) { |
| 69 | htmlOutput = bundle.getString("generic.text.setup.authentication.failed"); |
| 70 | } else { |
| 71 | Files.write(Paths.get(Constants.DBPROP), dbProp.toString().getBytes(), StandardOpenOption.CREATE); |
| 72 | if (Database.getDatabaseConnection(null) == null) { |
| 73 | htmlOutput = bundle.getString("generic.text.setup.connection.failed"); |
| 74 | } else { |
| 75 | try { |
| 76 | if (dbOverride.equalsIgnoreCase("overide")) { |
| 77 | executeSqlScript(); |
| 78 | htmlOutput = bundle.getString("generic.text.setup.success") + " " + bundle.getString("generic.text.setup.success.overwrittendb"); |
| 79 | } |
| 80 | else if (dbOverride.equalsIgnoreCase("upgrade")) { |
| 81 | executeUpdateScript(); |
| 82 | htmlOutput = bundle.getString("generic.text.setup.success") + " " + bundle.getString("generic.text.setup.success.updatedb"); |
| 83 | }else { |
| 84 | htmlOutput = bundle.getString("generic.text.setup.success"); |
| 85 | } |
| 86 | success = true; |
| 87 | } catch (InstallationException e) { |
| 88 | htmlOutput = bundle.getString("generic.text.setup.failed") + ": " + e.getMessage(); |
| 89 | FileUtils.deleteQuietly(new File(Constants.DBPROP)); |
| 90 | } |
| 91 | //Clean up File as it is not needed anymore. Will Cause a new one to be generated next time too |
nothing calls this directly
no test coverage detected