outputType = req.getParameter("output_type");\r
}\r
\r
- try {\r
-\r
- String filterQuery = this.queryGeneretor(map);\r
- eventlogger.debug("SQL Query for Statistics resultset. " + filterQuery);\r
-\r
- ResultSet rs = this.getRecordsForSQL(filterQuery);\r
-\r
- if (outputType.equals("csv")) {\r
- resp.setContentType("application/octet-stream");\r
- Date date = new Date();\r
- SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-YYYY HH:mm:ss");\r
- resp.setHeader("Content-Disposition",\r
- "attachment; filename=\"result:" + dateFormat.format(date) + ".csv\"");\r
- eventlogger.info("Generating CSV file from Statistics resultset");\r
+ this.getRecordsForSQL(map, outputType, out, resp);\r
\r
- rsToCSV(rs, out);\r
- } else {\r
- eventlogger.info("Generating JSON for Statistics resultset");\r
- this.rsToJson(rs, out);\r
- }\r
- } catch (IOException e) {\r
- eventlogger.error("IOException - Generating JSON/CSV:" + e);\r
- e.printStackTrace();\r
- } catch (JSONException e) {\r
- eventlogger.error("JSONException - executing SQL query:" + e);\r
- e.printStackTrace();\r
- } catch (SQLException e) {\r
- eventlogger.error("SQLException - executing SQL query:" + e);\r
- e.printStackTrace();\r
- } catch (ParseException e) {\r
- eventlogger.error("ParseException - executing SQL query:" + e);\r
- e.printStackTrace();\r
- }\r
}\r
\r
\r
intlogger.info("Error parsing time=" + s);\r
return -1;\r
}\r
- private ResultSet getRecordsForSQL(String sql) {\r
- intlogger.debug(sql);\r
+\r
+ private void getRecordsForSQL(Map<String, String> map, String outputType, ServletOutputStream out, HttpServletResponse resp) {\r
+ try {\r
+\r
+ String filterQuery = this.queryGeneretor(map);\r
+ eventlogger.debug("SQL Query for Statistics resultset. " + filterQuery);\r
+ intlogger.debug(filterQuery);\r
long start = System.currentTimeMillis();\r
DB db = new DB();\r
- Connection conn = null;\r
ResultSet rs = null;\r
- Statement stmt = null;\r
- PreparedStatement pst = null;\r
- try {\r
- conn = db.getConnection();\r
- stmt = conn.createStatement();\r
- pst = conn.prepareStatement(sql);\r
+ try (Connection conn = db.getConnection()) {\r
+ try (PreparedStatement pst = conn.prepareStatement(filterQuery)) {\r
rs = pst.executeQuery();\r
- } catch (SQLException e) {\r
- e.printStackTrace();\r
- } finally {\r
-\r
- try {\r
- if (conn != null) {\r
- db.release(conn);\r
- }\r
- if (stmt != null) {\r
- stmt.close();\r
- }\r
- if (pst != null) {\r
- pst.close();\r
- }\r
- if (rs != null) {\r
- rs.close();\r
- }\r
-\r
- } catch (SQLException sqlException) {\r
- intlogger.error("Exception in getting SQl Records",sqlException);\r
+ if (outputType.equals("csv")) {\r
+ resp.setContentType("application/octet-stream");\r
+ Date date = new Date();\r
+ SimpleDateFormat dateFormat = new SimpleDateFormat("dd-MM-YYYY HH:mm:ss");\r
+ resp.setHeader("Content-Disposition",\r
+ "attachment; filename=\"result:" + dateFormat.format(date) + ".csv\"");\r
+ eventlogger.info("Generating CSV file from Statistics resultset");\r
+\r
+ rsToCSV(rs, out);\r
+ } else {\r
+ eventlogger.info("Generating JSON for Statistics resultset");\r
+ this.rsToJson(rs, out);\r
}\r
-\r
- intlogger.debug("Time: " + (System.currentTimeMillis() - start) + " ms");\r
-\r
- return rs;\r
+ }\r
+ } catch (SQLException e) {\r
+ e.printStackTrace();\r
}\r
+ intlogger.debug("Time: " + (System.currentTimeMillis() - start) + " ms");\r
+ } catch (IOException e) {\r
+ eventlogger.error("IOException - Generating JSON/CSV:" + e);\r
+ e.printStackTrace();\r
+ } catch (JSONException e) {\r
+ eventlogger.error("JSONException - executing SQL query:" + e);\r
+ e.printStackTrace();\r
+ } catch (ParseException e) {\r
+ eventlogger.error("ParseException - executing SQL query:" + e);\r
+ e.printStackTrace();\r
+ }\r
}\r
}\r
+\r