- conn = db.getConnection();\r
- Statement stmt = conn.createStatement();\r
- PreparedStatement pst=conn.prepareStatement(sql);\r
- rs=pst.executeQuery();\r
- //this.rsToJson(rs)\r
- //rs.close();\r
- stmt.close();\r
- } catch (SQLException e) {\r
- e.printStackTrace();\r
- } finally {\r
- if (conn != null)\r
- db.release(conn);\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
+ try (Connection conn = ProvDbUtils.getInstance().getConnection();\r
+ PreparedStatement ps = conn.prepareStatement(filterQuery);\r
+ ResultSet rs = ps.executeQuery()) {\r
+ if ("csv".equals(outputType)) {\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
+ rsToCSV(rs, out);\r
+ } else {\r
+ eventlogger.info("Generating JSON for Statistics resultset");\r
+ this.rsToJson(rs, out);\r
+ }\r
+ } catch (SQLException e) {\r
+ eventlogger.error("SQLException:" + e);\r
+ }\r
+ intlogger.debug("Time: " + (System.currentTimeMillis() - start) + " ms");\r
+ } catch (IOException e) {\r
+ eventlogger.error("IOException - Generating JSON/CSV:" + e);\r
+ } catch (JSONException e) {\r
+ eventlogger.error("JSONException - executing SQL query:" + e);\r
+ } catch (ParseException e) {\r
+ eventlogger.error("ParseException - executing SQL query:" + e);\r