diff options
Diffstat (limited to 'ecomp-sdk/epsdk-analytics')
8 files changed, 341 insertions, 412 deletions
diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ActionHandler.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ActionHandler.java index 1eea72e1..d6ae3e2d 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ActionHandler.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ActionHandler.java @@ -140,6 +140,13 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { private static final String PARENT = "parent_"; private static final EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(ActionHandler.class); + private static final String REPORT_DOWNLOAD_PDF = "report.download.pdf"; + private static final String REPORT_TEXT_DOWNLOAD = "report.text.download"; + private static final String REPORT_CSV_DOWNLOAD = "report.csv.download"; + private static final String REPORT_DOWNLOAD_EXCEL2007 = "report.download.excel2007"; + private static final String REPORT_DOWNLOAD = "report.download"; + private static final String REPORT_DOWNLOAD_PAGE = "report.download.page"; + private void preserveReportRuntimeAsBackup(HttpServletRequest request) { HttpSession session = request.getSession(); ArrayList repAl = null; @@ -188,6 +195,13 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { return false; } + private boolean isReportActionKey(String actionKey) + { + return REPORT_DOWNLOAD_PAGE.equals(actionKey) || REPORT_DOWNLOAD.equals(actionKey) || + REPORT_DOWNLOAD_PDF.equals(actionKey) || REPORT_DOWNLOAD_EXCEL2007.equals(actionKey) || + REPORT_CSV_DOWNLOAD.equals(actionKey) || REPORT_TEXT_DOWNLOAD.equals(actionKey); + } + public String reportRun(HttpServletRequest request, String nextPage) { String action = nvl(request.getParameter(AppConstants.RI_ACTION), request.getParameter("action")); ReportRuntime rr = null; @@ -224,18 +238,18 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { parentFlag = 1; } - if (pdfAttachmentKey.length()<=0) { - if(actionKey.equals("report.download.page") || actionKey.equals("report.download") || actionKey.equals("report.download.pdf") || actionKey.equals("report.download.excel2007") || actionKey.equals("report.csv.download") || actionKey.equals("report.text.download")) { - if(parentFlag == 1) rr = (ReportRuntime) request.getSession().getAttribute(parent+"_rr"); + if((pdfAttachmentKey.length()<=0) && isReportActionKey(actionKey)) { + if(parentFlag == 1) + rr = (ReportRuntime) request.getSession().getAttribute(parent+"_rr"); if(rr==null) - rr = (ReportRuntime) request.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME); //changing session to request + rr = (ReportRuntime) request.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME); //changing session to request if(!(rr!=null && fromDashboard)) { userId = AppUtils.getUserID(request); boolean isFromReportLog = AppUtils.getRequestFlag(request, "fromReportLog"); int downloadLimit = 0; if(rr!=null) downloadLimit = (rr.getMaxRowsInExcelDownload()>0)?rr.getMaxRowsInExcelDownload():Globals.getDownloadLimit(); - if(actionKey.equals("report.csv.download")) + if(REPORT_CSV_DOWNLOAD.equals(actionKey)) downloadLimit = Globals.getCSVDownloadLimit(); if(rr!=null && rr.getReportType().equals(AppConstants.RT_LINEAR)) { @@ -247,25 +261,25 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { } if(!isFromReportLog) { if(pdfAttachmentKey!=null && pdfAttachmentKey.length()>0) { - if(actionKey.equals("report.download")) { + if(REPORT_DOWNLOAD.equals(actionKey)) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_SCHEDULED_DOWNLOAD_EXCEL, formFields); - } else if (actionKey.equals("report.download.pdf")) { + } else if (REPORT_DOWNLOAD_PDF.equals(actionKey)) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_SCHEDULED_DOWNLOAD_PDF, formFields); - } else if (actionKey.equals("report.download.excel2007")) { + } else if (REPORT_DOWNLOAD_EXCEL2007.equals(actionKey)) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_SCHEDULED_DOWNLOAD_EXCELX, formFields); } } else { - if(actionKey.equals("report.download") ) { + if(REPORT_DOWNLOAD.equals(actionKey) ) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_DOWNLOAD_EXCEL, formFields); - } else if (actionKey.equals("report.download.pdf")) { + } else if (REPORT_DOWNLOAD_PDF.equals(actionKey)) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_DOWNLOAD_PDF, formFields); - } else if (actionKey.equals("report.csv.download")) { + } else if (REPORT_CSV_DOWNLOAD.equals(actionKey)) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_DOWNLOAD_CSV, formFields); - } else if (actionKey.equals("report.text.download")) { + } else if (REPORT_TEXT_DOWNLOAD.equals(actionKey)) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_DOWNLOAD_TEXT, formFields); - } else if (actionKey.equals("report.download.page")) { + } else if (REPORT_DOWNLOAD_PAGE.equals(actionKey)) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_DOWNLOAD_PAGE_EXCEL, formFields); - } else if (actionKey.equals("report.download.excel2007")) { + } else if (REPORT_DOWNLOAD_EXCEL2007.equals(actionKey)) { rr.logReportExecutionTime(userId, "",AppConstants.RLA_DOWNLOAD_EXCELX, formFields); } } @@ -273,43 +287,29 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { return nextPage; } - } + }// pdfAttachmentKey String reportID = AppUtils.getRequestValue(request, AppConstants.RI_REPORT_ID); rr = (ReportRuntime) request.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME); //changing session to request String reportIDFromSession = (rr!=null)?rr.getReportID():""; logger.debug(EELFLoggerDelegate.debugLogger, ("in Action Handler ********** " + reportID + " " + reportIDFromSession + " "+ actionKey)); -// ReportRuntime rr = (ReportRuntime) request.getAttribute(AppConstants.SI_REPORT_RUNTIME); + logger.debug(EELFLoggerDelegate.debugLogger, ("^^^^^^^^^^^^^^report ID from session " + ((rr!=null)?rr.getReportID():"no report id in session"))); - // if(rr!=null && !(rr.getReportID().equals(reportID))) { -// rr = null; -// request.getSession().setAttribute(AppConstants.SI_REPORT_RUNTIME, null); -// } + ReportHandler rh1 = new ReportHandler(); ReportRuntime rr1 = null; - - //debugLogger.debug("Report ID B4 rr1 in ActionHandler " - // + ( request.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME)!=null?((ReportRuntime)request.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME)).getReportID():"Not in session")); - - //try { boolean isGoBackAction = AppUtils.getRequestFlag(request, AppConstants.RI_GO_BACK); if (AppUtils.getRequestFlag(request, AppConstants.RI_SHOW_BACK_BTN) && !isGoBackAction) { - // debugLogger.debug("Preserving report"); if(!reportID.equals(reportIDFromSession)) preserveReportRuntimeAsBackup(request); } if(reportID !=null) rr1 = rh1.loadReportRuntime(request, reportID, true, 1); - //} catch(Exception e) { - - // } -// debugLogger.debug("Report ID After rr1 in ActionHandler " -// + ( request.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME)!=null?((ReportRuntime)request.getSession().getAttribute(AppConstants.SI_REPORT_RUNTIME)).getReportID():"Not in session")); if(rr1!=null && rr1.getReportType().equals(AppConstants.RT_DASHBOARD)) { int DASH=7; int requestFlag = DASH; @@ -319,12 +319,9 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { //rr = null; // get dashboard HTML from report runtime. getListOfReportsFromDashBoardHTML String strHTML = rr1.getDashboardLayoutHTML(); - - //System.out.println("StrHTML " + strHTML); - // call getListOfReportsFromDashBoardHTML returns HashMap - + TreeMap treeMap = getListOfReportsFromDashBoardHTML(strHTML); - //System.out.println("Size " + hashMap.size()); + Set set = treeMap.entrySet(); String value = ""; @@ -337,7 +334,6 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { userId = null; userId = AppUtils.getUserID(request); int pageNo = -1; - //int downloadLimit = (rr1.getMaxRowsInExcelDownload()>0)?rr1.getMaxRowsInExcelDownload():Globals.getDownloadLimit(); int downloadLimit = 0; int rep_idx = 0; int widthFlag = 0; @@ -354,8 +350,6 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { for(Iterator iter = set.iterator(); iter.hasNext(); ) { record++; Map.Entry entry = (Entry) iter.next(); - //System.out.println("Key "+ entry.getKey()); - //System.out.println("Value "+ entry.getValue()); reportIDFromMap = entry.getValue().toString().substring(1); // The below line is used to optimize, so that if there is already same report id it wouldn't go through the whole process similiarReportRuntime = getSimiliarReportRuntime(reportsRuntimeMap, reportIDFromMap); @@ -403,11 +397,6 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { rrDashboardReports.logReportExecutionTime(userId, String.valueOf(totalTime),AppConstants.RLA_EXECUTION_TIME, formFields); } - /*reportsRuntimeMap.put(new Integer(entry.getKey().toString()), rrDashboardReports); - reportDataMap.put(new Integer(entry.getKey().toString()), rd); - reportChartDataMap.put(new Integer(entry.getKey().toString()), ds); - reportDisplayTypeMap.put(new Integer(entry.getKey().toString()), entry.getValue().toString().substring(0,1));*/ - reportsRuntimeMap.put(new Integer(entry.getKey().toString())+"_"+rrDashboardReports.getReportID(), rrDashboardReports); reportDisplayTypeMap.put(new Integer(entry.getKey().toString())+"_"+rrDashboardReports.getReportID(), entry.getValue().toString().substring(0,1)); if(buildReportdata) { @@ -416,21 +405,16 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { } } - - /*if(widthFlag ==1) request.getSession().setAttribute("extendedWidth", "Y"); - else request.getSession().removeAttribute("extendedWidth"); - if(heightFlag ==1) request.getSession().setAttribute("extendedHeight", "Y"); - else request.getSession().removeAttribute("extendedHeight"); - */ + request.getSession().setAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME_MAP, new TreeMap(reportsRuntimeMap)); request.getSession().setAttribute(AppConstants.SI_DASHBOARD_DISPLAYTYPE_MAP, new TreeMap(reportDisplayTypeMap)); if(buildReportdata) { request.getSession().setAttribute(AppConstants.SI_DASHBOARD_REPORTDATA_MAP, new TreeMap(reportDataMap)); request.getSession().setAttribute(AppConstants.SI_DASHBOARD_CHARTDATA_MAP, new TreeMap(reportChartDataMap)); } -// debugLogger.debug("I am inside this if " + rr1.getReportType() + " "+rr1.getReportID()); + request.getSession().setAttribute(AppConstants.SI_REPORT_RUNTIME, rr1); //changing session to request - //request.setAttribute(AppConstants.SI_REPORT_RUNTIME, rr1); + if((String) request.getSession().getAttribute(AppConstants.SI_DASHBOARD_REP_ID)!= null || rr1.getReportType().equals(AppConstants.RT_DASHBOARD)) { request.getSession().setAttribute(AppConstants.SI_DASHBOARD_REPORTRUNTIME, rr1); } @@ -704,16 +688,6 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { String sql_whole = rr.getReportSQL(); request.setAttribute(AppConstants.RI_REPORT_SQL_WHOLE, sql_whole); } - //} - //request.setAttribute(AppConstants.RI_REPORT_DATA_WHOLE, rd_whole); - // if(rr.getReportDataSize() > Globals.getFlatFileLowerLimit() && rr.getReportDataSize() <= Globals.getFlatFileUpperLimit() ) { - // rr.setFlatFileName(rh.saveFlatFile(request, rd, rr - // .getParamNameValuePairs(), rr.getReportName(), rr.getReportDescr())); - // } - //if(actionKey!=null && actionKey.equals("report.download")) { -// rr.setExcelPageFileName(rh.saveAsExcelFile(request, rd, rr -// .getParamNameValuePairs(), rr.getReportName(), rr.getReportDescr())); - //} if (!rr.getReportType().equals(AppConstants.RT_HIVE)) { long currentChartTime = System.currentTimeMillis(); DataSet chartDS = rr.loadChartData(userId,request); @@ -723,11 +697,6 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { request.getSession().removeAttribute(AppConstants.RI_CHART_DATA); logger.debug(EELFLoggerDelegate.debugLogger, ("[DEBUG MESSAGE FROM RAPTOR] ------->Time Taken for the loading chart data --- " + (System.currentTimeMillis() - currentChartTime))); } - -/* if((String) request.getSession().getAttribute(AppConstants.SI_DASHBOARD_REP_ID)!=null) { - request.getSession().setAttribute("FirstDashReport", rr); - } -*/ } request.getSession().setAttribute(AppConstants.SI_REPORT_RUNTIME, rr); //changing session to request request.getSession().setAttribute(AppConstants.RI_REPORT_DATA, rd); @@ -740,19 +709,19 @@ public class ActionHandler extends org.onap.portalsdk.analytics.RaptorObject { boolean isFromReportLog = AppUtils.getRequestFlag(request, "fromReportLog"); if(!isFromReportLog) { if(pdfAttachmentKey!=null && pdfAttachmentKey.length()>0) { - if(actionKey.equals("report.download")) { + if(actionKey.equals(REPORT_DOWNLOAD)) { rr.logReportExecutionTime(userId, String.valueOf(totalTime),AppConstants.RLA_SCHEDULED_DOWNLOAD_EXCEL, formFields); - } else if (actionKey.equals("report.download.pdf")) { + } else if (actionKey.equals(REPORT_DOWNLOAD_PDF)) { rr.logReportExecutionTime(userId, String.valueOf(totalTime),AppConstants.RLA_SCHEDULED_DOWNLOAD_PDF, formFields); } } else { - if(actionKey.equals("report.download") ) { + if(actionKey.equals(REPORT_DOWNLOAD) ) { rr.logReportExecutionTime(userId, String.valueOf(totalTime),AppConstants.RLA_DOWNLOAD_EXCEL, formFields); - } else if (actionKey.equals("report.download.pdf")) { + } else if (actionKey.equals(REPORT_DOWNLOAD_PDF)) { rr.logReportExecutionTime(userId, String.valueOf(totalTime),AppConstants.RLA_DOWNLOAD_PDF, formFields); - } else if (actionKey.equals("report.csv.download")) { + } else if (actionKey.equals(REPORT_CSV_DOWNLOAD)) { rr.logReportExecutionTime(userId, String.valueOf(totalTime),AppConstants.RLA_DOWNLOAD_CSV, formFields); - } else if (actionKey.equals("report.text.download")) { + } else if (actionKey.equals(REPORT_TEXT_DOWNLOAD)) { rr.logReportExecutionTime(userId, String.valueOf(totalTime),AppConstants.RLA_DOWNLOAD_TEXT, formFields); } else { diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ErrorHandler.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ErrorHandler.java index 1a31e604..30ec7b15 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ErrorHandler.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/ErrorHandler.java @@ -63,6 +63,9 @@ import com.fasterxml.jackson.databind.SerializationFeature; public class ErrorHandler extends org.onap.portalsdk.analytics.RaptorObject { private static final EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(ErrorHandler.class); + + private static final String EXCEPTION_FATAL_ERROR = "[EXCEPTION ENCOUNTERED IN RAPTOR] Fatal error ["; + private static final String C_ERROR_SQL = "c_error_sql"; public ErrorHandler() { } @@ -105,11 +108,11 @@ public class ErrorHandler extends org.onap.portalsdk.analytics.RaptorObject { return sessionLogStrBuf.toString(); } public String processFatalError(HttpServletRequest request, RaptorException e) { - logger.error(EELFLoggerDelegate.debugLogger, ("[EXCEPTION ENCOUNTERED IN RAPTOR] Fatal error [" + e.getClass().getName() + "]: " + nvl(e.getMessage())+" "+ getSessionLog(request) + e.getMessage()),AlarmSeverityEnum.MAJOR); + logger.error(EELFLoggerDelegate.debugLogger, (EXCEPTION_FATAL_ERROR + e.getClass().getName() + "]: " + nvl(e.getMessage())+" "+ getSessionLog(request) + e.getMessage()),AlarmSeverityEnum.MAJOR); if (e instanceof ReportSQLException) { String errorSQL = ((ReportSQLException) e).getReportSQL(); if (nvl(errorSQL).length() > 0) - request.setAttribute("c_error_sql", errorSQL); + request.setAttribute(C_ERROR_SQL, errorSQL); } // if AppUtils.processErrorNotification(request, e); @@ -118,11 +121,11 @@ public class ErrorHandler extends org.onap.portalsdk.analytics.RaptorObject { } // processFatalError public String processFatalErrorJSON(HttpServletRequest request, RaptorException e) { - logger.error(EELFLoggerDelegate.debugLogger, ("[EXCEPTION ENCOUNTERED IN RAPTOR] Fatal error [" + e.getClass().getName() + "]: " + nvl(e.getMessage())+" "+ getSessionLog(request) + e.getMessage()),AlarmSeverityEnum.MAJOR); + logger.error(EELFLoggerDelegate.debugLogger, (EXCEPTION_FATAL_ERROR + e.getClass().getName() + "]: " + nvl(e.getMessage())+" "+ getSessionLog(request) + e.getMessage()),AlarmSeverityEnum.MAJOR); if (e instanceof ReportSQLException) { String errorSQL = ((ReportSQLException) e).getReportSQL(); if (nvl(errorSQL).length() > 0) - request.setAttribute("c_error_sql", errorSQL); + request.setAttribute(C_ERROR_SQL, errorSQL); } // if request.setAttribute(AppConstants.RI_EXCEPTION, e); @@ -136,7 +139,7 @@ public class ErrorHandler extends org.onap.portalsdk.analytics.RaptorObject { try { jsonInString = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(errorJSONRuntime); } catch (Exception ex) { - logger.error(EELFLoggerDelegate.debugLogger, ("[EXCEPTION ENCOUNTERED IN RAPTOR] Fatal error [" + ex.getClass().getName() + "]: " + nvl(ex.getMessage())+" "+ getSessionLog(request) + ex.getMessage()),AlarmSeverityEnum.MAJOR); + logger.error(EELFLoggerDelegate.debugLogger, (EXCEPTION_FATAL_ERROR + ex.getClass().getName() + "]: " + nvl(ex.getMessage())+" "+ getSessionLog(request) + ex.getMessage()),AlarmSeverityEnum.MAJOR); ex.printStackTrace(); } @@ -150,11 +153,11 @@ public class ErrorHandler extends org.onap.portalsdk.analytics.RaptorObject { return result.toString(); } public String processFatalErrorWMenu(HttpServletRequest request, RaptorException e) { - logger.error(EELFLoggerDelegate.debugLogger, ("[EXCEPTION ENCOUNTERED IN RAPTOR] Fatal error [" + e.getClass().getName() + "]: " + nvl(e.getMessage())+" "+ getSessionLog(request) + e.getMessage()),AlarmSeverityEnum.MAJOR); + logger.error(EELFLoggerDelegate.debugLogger, (EXCEPTION_FATAL_ERROR + e.getClass().getName() + "]: " + nvl(e.getMessage())+" "+ getSessionLog(request) + e.getMessage()),AlarmSeverityEnum.MAJOR); if (e instanceof ReportSQLException) { String errorSQL = ((ReportSQLException) e).getReportSQL(); if (nvl(errorSQL).length() > 0) - request.setAttribute("c_error_sql", errorSQL); + request.setAttribute(C_ERROR_SQL, errorSQL); } // if AppUtils.processErrorNotification(request, e); diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/WizardProcessor.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/WizardProcessor.java index f0829d29..bd8d778e 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/WizardProcessor.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/controller/WizardProcessor.java @@ -376,12 +376,7 @@ public class WizardProcessor extends org.onap.portalsdk.analytics.RaptorObject { rdef.setDataContainerWidth(dataContainerWidth); rdef.setAllowSchedule(isAllowSchedule?"Y":"N"); - - reportUpdated = true; - - - if (rdef.getWizardSequence() instanceof WizardSequence) - rdef.generateWizardSequence(request); + rdef.generateWizardSequence(request); } else { @@ -412,22 +407,17 @@ public class WizardProcessor extends org.onap.portalsdk.analytics.RaptorObject { else rdef.setEmptyMessage(""); String formHelp = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "formHelp")); - //String rDashboardType = nvl(AppUtils.getRequestValue(request, "showDashboardOptions"), "N"); - //rdef.setDashboardType(rDashboardType.equals("Y")); - int excelDownloadSize = 500; - try { - excelDownloadSize = Integer.parseInt(AppUtils.getRequestValue(request, "excelDownloadSize")); - } catch (NumberFormatException ex) {} + if(AppUtils.getRequestNvlValue(request, "excelDownloadSize").length()>0) rdef.setMaxRowsInExcelDownload(Integer.parseInt(AppUtils.getRequestValue(request, "excelDownloadSize"))); if(AppUtils.getRequestNvlValue(request, "reportInNewWindow").length()>0) - reportsInNewWindow = AppUtils.getRequestNvlValue(request,"reportInNewWindow").equals("Y"); + reportsInNewWindow = "Y".equals(AppUtils.getRequestNvlValue(request,"reportInNewWindow")); if(AppUtils.getRequestNvlValue(request, "hideFormFieldsAfterRun").length()>0) - hideFormFieldAfterRun = AppUtils.getRequestNvlValue(request,"hideFormFieldsAfterRun").equals("Y"); + hideFormFieldAfterRun = "Y".equals(AppUtils.getRequestNvlValue(request,"hideFormFieldsAfterRun")); if(AppUtils.getRequestNvlValue(request, "displayFolderTree").length()>0) - rdef.setDisplayFolderTree(AppUtils.getRequestNvlValue(request,"displayFolderTree").equals("Y")); + rdef.setDisplayFolderTree("Y".equals(AppUtils.getRequestNvlValue(request,"displayFolderTree"))); else rdef.setDisplayFolderTree(false); String dataSource = AppUtils.getRequestNvlValue(request, "dataSource"); @@ -457,11 +447,7 @@ public class WizardProcessor extends org.onap.portalsdk.analytics.RaptorObject { if (menuIDs != null) for (int i = 0; i < menuIDs.length; i++) menuID += (menuID.length() == 0 ? "" : "|") + menuIDs[i]; - /* else - menuID = "";*/ -// boolean additionalFieldsShown = AppUtils.getRequestNvlValue(request, -// "additionalFieldsShown").equals("Y"); boolean rRCSDisabled = AppUtils.getRequestNvlValue(request, "runtimeColSortDisabled").equals("Y"); String reportDefType = AppUtils.getRequestNvlValue(request, "reportDefType"); String dataContainerHeight = nvl(AppUtils.getRequestValue(request, "heightContainer"), "auto"); @@ -474,10 +460,6 @@ public class WizardProcessor extends org.onap.portalsdk.analytics.RaptorObject { + nvl(AppUtils.getRequestValue(request, "hideMap"), "N") + nvl(AppUtils.getRequestValue(request, "hideExcelIcons"), "N") + nvl(AppUtils.getRequestValue(request, "hidePDFIcons"), "N"); -/* StringBuffer dashboardOptions = new StringBuffer(""); - dashboardOptions.append((nvl(AppUtils.getRequestValue(request, "hide"),"chart").equals("chart"))?"Y":"N"); - dashboardOptions.append((nvl(AppUtils.getRequestValue(request, "hide"),"").equals("data"))?"Y":"N"); - dashboardOptions.append((nvl(AppUtils.getRequestValue(request, "hideBtns"),"").equals("Y"))?"Y":"N");*/ String numFormCols = nvl(AppUtils.getRequestValue(request, "numFormCols"), "1"); String reportTitle = XSSFilter.filterRequestOnlyScript(AppUtils.getRequestNvlValue(request, "reportTitle")); @@ -492,64 +474,6 @@ public class WizardProcessor extends org.onap.portalsdk.analytics.RaptorObject { } -/* reportUpdated = (!(reportName.equals(nvl(rdef.getReportName())))) - && (!(reportDescr.equals(nvl(rdef.getReportDescr())))) - && (!(formHelp.equals(nvl(rdef.getFormHelpText())))) - && (!(reportType.equals(nvl(rdef.getReportType())))) - && (pageSize != rdef.getPageSize()) && - // rPublic.equals(rdef.isPublic()?"Y":"N")&& - (!(menuID.equals(nvl(rdef.getMenuID())))) - && (!(rApproved.equals(rdef.isMenuApproved()))) && (additionalFieldsShown ? ((!(rRCSDisabled - .equals(rdef.isRuntimeColSortDisabled()))) - && (!(displayOptions.equals(nvl(rdef.getDisplayOptions())))) - && (!(dashboardOptions.equals(nvl(rdef.getDashboardOptions())))) - && (!(numFormCols.equals(nvl(rdef.getNumFormCols())))) - && (!(reportTitle.equals(nvl(rdef.getReportTitle())))) - && (!(reportSubTitle.equals(nvl(rdef.getReportSubTitle())))) - && (!(reportHeader.equals(nvl(rdef.getReportHeader())))) && (!(reportFooter - .equals(nvl(rdef.getReportFooter()))))&& (reportsInNewWindow != rdef.isReportInNewWindow())):true); -*/ -/* reportUpdated = rRCSDisabled ==(rdef.isRuntimeColSortDisabled() - && displayOptions.equals(nvl(rdef.getDisplayOptions())) - //&& dashboardOptions.equals(nvl(rdef.getDashboardOptions())) - && numFormCols.equals(nvl(rdef.getNumFormCols())) - && reportTitle.equals(nvl(rdef.getReportTitle())) - && reportSubTitle.equals(nvl(rdef.getReportSubTitle())) - && reportHeader.equals(nvl(rdef.getReportHeader())) - && reportsInNewWindow == rdef.isReportInNewWindow() - && reportFooter.equals(nvl(rdef.getReportFooter()))) - ;*/ - - - /*reportUpdated = (!(reportName.equals(nvl(rdef.getReportName())) - && reportDescr.equals(nvl(rdef.getReportDescr())) - && formHelp.equals(nvl(rdef.getFormHelpText())) - && reportType.equals(nvl(rdef.getReportType())) - && (pageSize == rdef.getPageSize()) - && excelDownloadSize == rdef.getMaxRowsInExcelDownload() - && reportsInNewWindow == rdef.isReportInNewWindow() - && displayOptions.equals(rdef.getDisplayOptions()) - && dataContainerHeight.equals(rdef.getDataContainerHeight()) - && dataContainerWidth.equals(rdef.getDataContainerWidth()) - && (isAllowSchedule ==(rdef.isAllowSchedule())) - // rPublic.equals(rdef.isPublic()?"Y":"N")&& - && menuID.equals(nvl(rdef.getMenuID())) - && rApproved.equals(rdef.isMenuApproved() ? "Y" : "N") && (rRCSDisabled - == ((rdef.isRuntimeColSortDisabled()) - && displayOptions.equals(nvl(rdef.getDisplayOptions())) - //&& dashboardOptions.equals(nvl(rdef.getDashboardOptions())) - && numFormCols.equals(nvl(rdef.getNumFormCols())) - && reportTitle.equals(nvl(rdef.getReportTitle())) - && reportSubTitle.equals(nvl(rdef.getReportSubTitle())) - && isOneTimeScheduleAllowed.equals(nvl(rdef.getIsOneTimeScheduleAllowed())) - && isHourlyScheduleAllowed.equals(nvl(rdef.getIsHourlyScheduleAllowed())) - && isDailyScheduleAllowed.equals(nvl(rdef.getIsDailyScheduleAllowed())) - && isDailyMFScheduleAllowed.equals(nvl(rdef.getIsDailyMFScheduleAllowed())) - && isWeeklyScheduleAllowed.equals(nvl(rdef.getIsWeeklyScheduleAllowed())) - && isMonthlyScheduleAllowed.equals(nvl(rdef.getIsMonthlyScheduleAllowed())) - && reportHeader.equals(nvl(rdef.getReportHeader())) && reportFooter - .equals(nvl(rdef.getReportFooter())))) - )); */ rdef.setReportName(reportName); rdef.setReportDescr(reportDescr); rdef.setFormHelpText(formHelp); @@ -564,14 +488,11 @@ public class WizardProcessor extends org.onap.portalsdk.analytics.RaptorObject { rdef.setMultiGroupColumn(isColumnGroup?"Y":"N"); rdef.setTopDown(isTopDown?"Y":"N"); rdef.setSizedByContent(isSizedByContent?"Y":"N"); - // rdef.setPublic(rPublic.equals("Y")); rdef.setMenuID(menuID); rdef.setMenuApproved(rApproved.equals("Y")); if (reportDefType.length() > 0) rdef.setReportDefType(reportDefType); -/* if(rdef.isDashboardType()) { - rdef.setDashboardOptions(dashboardOptions.toString()); - }*/ + rdef.setHideFormFieldAfterRun(hideFormFieldAfterRun); rdef.setReportInNewWindow(reportsInNewWindow); rdef.setRuntimeColSortDisabled(rRCSDisabled); @@ -594,18 +515,6 @@ public class WizardProcessor extends org.onap.portalsdk.analytics.RaptorObject { rdef.generateWizardSequence(request); - /* - * if(formHelp.length()>255) formHelp = formHelp.substring(0, 255); - */ - - - // String rPublic = nvl(AppUtils.getRequestValue(request, "public"), - // "N"); - // String menuID = AppUtils.getRequestNvlValue(request, "menuID"); - -// boolean dashboardOptionsShown = AppUtils.getRequestNvlValue(request, -// "dashboardOptionsShown").equals("Y"); - reportUpdated = true; if (rdef.getReportID().equals("-1")) diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartJSONHelper.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartJSONHelper.java index 0e36dd0f..29cbca18 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartJSONHelper.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartJSONHelper.java @@ -80,10 +80,10 @@ public class ChartJSONHelper { private ReportRuntime reportRuntime; private String chartType; - public static final long HOUR = 3600*1000; - public static final long DAY = 3600*1000*24; - public static final long MONTH = 3600*1000*24*31; - public static final long YEAR = 3600*1000*24*365; + public static final long HOUR = 3600L * 1000L; + public static final long DAY = 3600L * 1000L * 24L; + public static final long MONTH = 3600L * 1000L * 24L * 31L; + public static final long YEAR = 3600L * 1000L * 24L * 365L; public ChartJSONHelper() { @@ -108,138 +108,191 @@ public class ChartJSONHelper { this.reportRuntime = rr; } - public String generateJSON(String reportID, HttpServletRequest request, boolean showData) throws RaptorException { - //From annotations chart - clearReportRuntimeBackup(request); - - //HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).getRequest(); - final Long user_id = new Long((long) UserUtils.getUserId(request)); - //String action = request.getParameter(AppConstants.RI_ACTION); - //String reportID = AppUtils.getRequestValue(request, AppConstants.RI_REPORT_ID); + public String generateJSON(String reportID, HttpServletRequest request, boolean showData) + throws RaptorException { + // From annotations chart + clearReportRuntimeBackup(request); - ReportHandler rh = new ReportHandler(); - //ReportData reportData = null; - HashMap<String, String> chartOptionsMap = new HashMap<String, String>(); - try { - if(reportID !=null) { - reportRuntime = rh.loadReportRuntime(request, reportID, true, 1); - setChartType(reportRuntime.getChartType()); - //reportData = reportRuntime.loadReportData(0, user_id.toString(), 10000,request, false); - } - - - - String rotateLabelsStr = ""; - rotateLabelsStr = AppUtils.nvl(reportRuntime.getLegendLabelAngle()); - if(rotateLabelsStr.toLowerCase().equals("standard")) { - rotateLabelsStr = "0"; - } else if (rotateLabelsStr.toLowerCase().equals("up45")) { - rotateLabelsStr = "45"; - } else if (rotateLabelsStr.toLowerCase().equals("down45")) { - rotateLabelsStr = "-45"; - } else if (rotateLabelsStr.toLowerCase().equals("up90")) { - rotateLabelsStr = "90"; - } else if (rotateLabelsStr.toLowerCase().equals("down90")) { - rotateLabelsStr = "-90"; - } else - rotateLabelsStr = "0"; - - String width = (AppUtils.getRequestNvlValue(request, "width").length()>0?AppUtils.getRequestNvlValue(request, "width"):(AppUtils.nvl(reportRuntime.getChartWidth()).length()>0?reportRuntime.getChartWidth():"700")); - String height = (AppUtils.getRequestNvlValue(request, "height").length()>0?AppUtils.getRequestNvlValue(request, "height"):(AppUtils.nvl(reportRuntime.getChartHeight()).length()>0?reportRuntime.getChartHeight():"300")); - String animationStr = (AppUtils.getRequestNvlValue(request, "animation").length()>0?AppUtils.getRequestNvlValue(request, "animation"):new Boolean(reportRuntime.isAnimateAnimatedChart()).toString()); - - String rotateLabels = (AppUtils.getRequestNvlValue(request, "rotateLabels").length()>0?AppUtils.getRequestNvlValue(request, "rotateLabels"):(rotateLabelsStr.length()>0?rotateLabelsStr:"0")); - String staggerLabelsStr = (AppUtils.getRequestNvlValue(request, "staggerLabels").length()>0?AppUtils.getRequestNvlValue(request, "staggerLabels"):"false"); - String showMaxMinStr = (AppUtils.getRequestNvlValue(request, "showMaxMin").length()>0?AppUtils.getRequestNvlValue(request, "showMaxMin"):"false"); - String showControlsStr = (AppUtils.getRequestNvlValue(request, "showControls").length()>0?AppUtils.getRequestNvlValue(request, "showControls"):new Boolean(reportRuntime.displayBarControls()).toString()); - String showLegendStr = (AppUtils.getRequestNvlValue(request, "showLegend").length()>0?AppUtils.getRequestNvlValue(request, "showLegend"):new Boolean(!new Boolean(reportRuntime.hideChartLegend())).toString()); - String topMarginStr = AppUtils.getRequestNvlValue(request, "topMargin"); - String topMargin = (AppUtils.nvl(topMarginStr).length()<=0)?(reportRuntime.getTopMargin()!=null?reportRuntime.getTopMargin().toString():"30"):topMarginStr; - String bottomMarginStr = AppUtils.getRequestNvlValue(request, "bottomMargin"); - String bottomMargin = (AppUtils.nvl(bottomMarginStr).length()<=0)?(reportRuntime.getBottomMargin()!=null?reportRuntime.getBottomMargin().toString():"50"):bottomMarginStr; - String leftMarginStr = AppUtils.getRequestNvlValue(request, "leftMargin"); - String leftMargin = (AppUtils.nvl(leftMarginStr).length()<=0)?(reportRuntime.getLeftMargin()!=null?reportRuntime.getLeftMargin().toString():"100"):leftMarginStr; - String rightMarginStr = AppUtils.getRequestNvlValue(request, "rightMargin"); - String rightMargin = (AppUtils.nvl(rightMarginStr).length()<=0)?(reportRuntime.getRightMargin()!=null?reportRuntime.getRightMargin().toString():"160"):rightMarginStr; - String showTitleStr = (AppUtils.getRequestNvlValue(request, "showTitle").length()>0?AppUtils.getRequestNvlValue(request, "showTitle"):new Boolean(reportRuntime.displayChartTitle()).toString()); - String subType = AppUtils.getRequestNvlValue(request, "subType").length()>0?AppUtils.getRequestNvlValue(request, "subType"):(AppUtils.nvl(reportRuntime.getTimeSeriesRender()).equals("area")?reportRuntime.getTimeSeriesRender():""); - String stackedStr = AppUtils.getRequestNvlValue(request, "stacked").length()>0?AppUtils.getRequestNvlValue(request, "stacked"):new Boolean(reportRuntime.isChartStacked()).toString(); - String horizontalBar = AppUtils.getRequestNvlValue(request, "horizontalBar").length()>0?AppUtils.getRequestNvlValue(request, "horizontalBar"):new Boolean(reportRuntime.isHorizontalOrientation()).toString(); - String barRealTimeAxis = AppUtils.getRequestNvlValue(request, "barRealTimeAxis"); - String barReduceXAxisLabels = AppUtils.getRequestNvlValue(request, "barReduceXAxisLabels").length()>0?AppUtils.getRequestNvlValue(request, "barReduceXAxisLabels"):new Boolean(reportRuntime.isLessXaxisTickers()).toString();; - String timeAxis = AppUtils.getRequestNvlValue(request, "timeAxis").length()>0?AppUtils.getRequestNvlValue(request, "timeAxis"):new Boolean(reportRuntime.isTimeAxis()).toString(); - String logScale = AppUtils.getRequestNvlValue(request, "logScale").length()>0?AppUtils.getRequestNvlValue(request, "logScale"):new Boolean(reportRuntime.isLogScale()).toString(); - String precision = AppUtils.getRequestNvlValue(request, "precision").length()>0?AppUtils.getRequestNvlValue(request, "precision"):"2"; - + ReportHandler rh = new ReportHandler(); - chartOptionsMap.put("width", width); - chartOptionsMap.put("height", height); - chartOptionsMap.put("animation", animationStr); - chartOptionsMap.put("rotateLabels", rotateLabels); - chartOptionsMap.put("staggerLabels", staggerLabelsStr); - chartOptionsMap.put("showMaxMin", showMaxMinStr); - chartOptionsMap.put("showControls", showControlsStr); - chartOptionsMap.put("showLegend", showLegendStr); - chartOptionsMap.put("topMargin", topMargin); - chartOptionsMap.put("bottomMargin", bottomMargin); - chartOptionsMap.put("leftMargin", leftMargin); - chartOptionsMap.put("rightMargin", rightMargin); - chartOptionsMap.put("showTitle", showTitleStr); - chartOptionsMap.put("subType", subType); - chartOptionsMap.put("stacked", stackedStr); - chartOptionsMap.put("horizontalBar", horizontalBar); - chartOptionsMap.put("timeAxis", timeAxis); - chartOptionsMap.put("barRealTimeAxis", barRealTimeAxis); - chartOptionsMap.put("barReduceXAxisLabels", barReduceXAxisLabels); - - chartOptionsMap.put("logScale", logScale); - chartOptionsMap.put("precision", precision); - - - } catch (RaptorException ex) { - ex.printStackTrace(); - } - return generateJSON(reportRuntime, chartOptionsMap, request, showData); - } + HashMap<String, String> chartOptionsMap = new HashMap<>(); + + try { + if (reportID != null) { + reportRuntime = rh.loadReportRuntime(request, reportID, true, 1); + setChartType(reportRuntime.getChartType()); + } + + String rotateLabelsStr = ""; + rotateLabelsStr = AppUtils.nvl(reportRuntime.getLegendLabelAngle()); + if (rotateLabelsStr.equalsIgnoreCase("standard")) { + rotateLabelsStr = "0"; + } else if (rotateLabelsStr.equalsIgnoreCase("up45")) { + rotateLabelsStr = "45"; + } else if (rotateLabelsStr.equalsIgnoreCase("down45")) { + rotateLabelsStr = "-45"; + } else if (rotateLabelsStr.equalsIgnoreCase("up90")) { + rotateLabelsStr = "90"; + } else if (rotateLabelsStr.equalsIgnoreCase("down90")) { + rotateLabelsStr = "-90"; + } else + rotateLabelsStr = "0"; + + String width = (AppUtils.getRequestNvlValue(request, "width").length() > 0 + ? AppUtils.getRequestNvlValue(request, "width") + : (AppUtils.nvl(reportRuntime.getChartWidth()).length() > 0 + ? reportRuntime.getChartWidth() + : "700")); + String height = (AppUtils.getRequestNvlValue(request, "height").length() > 0 + ? AppUtils.getRequestNvlValue(request, "height") + : (AppUtils.nvl(reportRuntime.getChartHeight()).length() > 0 + ? reportRuntime.getChartHeight() + : "300")); + String animationStr = (AppUtils.getRequestNvlValue(request, "animation").length() > 0 + ? AppUtils.getRequestNvlValue(request, "animation") + : new Boolean(reportRuntime.isAnimateAnimatedChart()).toString()); + + String rotateLabels = (AppUtils.getRequestNvlValue(request, "rotateLabels").length() > 0 + ? AppUtils.getRequestNvlValue(request, "rotateLabels") + : (rotateLabelsStr.length() > 0 ? rotateLabelsStr : "0")); + String staggerLabelsStr = + (AppUtils.getRequestNvlValue(request, "staggerLabels").length() > 0 + ? AppUtils.getRequestNvlValue(request, "staggerLabels") + : "false"); + String showMaxMinStr = (AppUtils.getRequestNvlValue(request, "showMaxMin").length() > 0 + ? AppUtils.getRequestNvlValue(request, "showMaxMin") + : "false"); + String showControlsStr = + (AppUtils.getRequestNvlValue(request, "showControls").length() > 0 + ? AppUtils.getRequestNvlValue(request, "showControls") + : new Boolean(reportRuntime.displayBarControls()).toString()); + String showLegendStr = (AppUtils.getRequestNvlValue(request, "showLegend").length() > 0 + ? AppUtils.getRequestNvlValue(request, "showLegend") + : new Boolean(!new Boolean(reportRuntime.hideChartLegend())).toString()); + String topMarginStr = AppUtils.getRequestNvlValue(request, "topMargin"); + String topMargin = (AppUtils.nvl(topMarginStr).length() <= 0) + ? (reportRuntime.getTopMargin() != null + ? reportRuntime.getTopMargin().toString() + : "30") + : topMarginStr; + String bottomMarginStr = AppUtils.getRequestNvlValue(request, "bottomMargin"); + String bottomMargin = (AppUtils.nvl(bottomMarginStr).length() <= 0) + ? (reportRuntime.getBottomMargin() != null + ? reportRuntime.getBottomMargin().toString() + : "50") + : bottomMarginStr; + String leftMarginStr = AppUtils.getRequestNvlValue(request, "leftMargin"); + String leftMargin = (AppUtils.nvl(leftMarginStr).length() <= 0) + ? (reportRuntime.getLeftMargin() != null + ? reportRuntime.getLeftMargin().toString() + : "100") + : leftMarginStr; + String rightMarginStr = AppUtils.getRequestNvlValue(request, "rightMargin"); + String rightMargin = (AppUtils.nvl(rightMarginStr).length() <= 0) + ? (reportRuntime.getRightMargin() != null + ? reportRuntime.getRightMargin().toString() + : "160") + : rightMarginStr; + String showTitleStr = (AppUtils.getRequestNvlValue(request, "showTitle").length() > 0 + ? AppUtils.getRequestNvlValue(request, "showTitle") + : new Boolean(reportRuntime.displayChartTitle()).toString()); + String subType = AppUtils.getRequestNvlValue(request, "subType").length() > 0 + ? AppUtils.getRequestNvlValue(request, "subType") + : (AppUtils.nvl(reportRuntime.getTimeSeriesRender()).equals("area") + ? reportRuntime.getTimeSeriesRender() + : ""); + String stackedStr = AppUtils.getRequestNvlValue(request, "stacked").length() > 0 + ? AppUtils.getRequestNvlValue(request, "stacked") + : new Boolean(reportRuntime.isChartStacked()).toString(); + String horizontalBar = + AppUtils.getRequestNvlValue(request, "horizontalBar").length() > 0 + ? AppUtils.getRequestNvlValue(request, "horizontalBar") + : new Boolean(reportRuntime.isHorizontalOrientation()).toString(); + String barRealTimeAxis = AppUtils.getRequestNvlValue(request, "barRealTimeAxis"); + String barReduceXAxisLabels = + AppUtils.getRequestNvlValue(request, "barReduceXAxisLabels").length() > 0 + ? AppUtils.getRequestNvlValue(request, "barReduceXAxisLabels") + : new Boolean(reportRuntime.isLessXaxisTickers()).toString();; + String timeAxis = AppUtils.getRequestNvlValue(request, "timeAxis").length() > 0 + ? AppUtils.getRequestNvlValue(request, "timeAxis") + : new Boolean(reportRuntime.isTimeAxis()).toString(); + String logScale = AppUtils.getRequestNvlValue(request, "logScale").length() > 0 + ? AppUtils.getRequestNvlValue(request, "logScale") + : new Boolean(reportRuntime.isLogScale()).toString(); + String precision = AppUtils.getRequestNvlValue(request, "precision").length() > 0 + ? AppUtils.getRequestNvlValue(request, "precision") + : "2"; + + + chartOptionsMap.put("width", width); + chartOptionsMap.put("height", height); + chartOptionsMap.put("animation", animationStr); + chartOptionsMap.put("rotateLabels", rotateLabels); + chartOptionsMap.put("staggerLabels", staggerLabelsStr); + chartOptionsMap.put("showMaxMin", showMaxMinStr); + chartOptionsMap.put("showControls", showControlsStr); + chartOptionsMap.put("showLegend", showLegendStr); + chartOptionsMap.put("topMargin", topMargin); + chartOptionsMap.put("bottomMargin", bottomMargin); + chartOptionsMap.put("leftMargin", leftMargin); + chartOptionsMap.put("rightMargin", rightMargin); + chartOptionsMap.put("showTitle", showTitleStr); + chartOptionsMap.put("subType", subType); + chartOptionsMap.put("stacked", stackedStr); + chartOptionsMap.put("horizontalBar", horizontalBar); + chartOptionsMap.put("timeAxis", timeAxis); + chartOptionsMap.put("barRealTimeAxis", barRealTimeAxis); + chartOptionsMap.put("barReduceXAxisLabels", barReduceXAxisLabels); + + chartOptionsMap.put("logScale", logScale); + chartOptionsMap.put("precision", precision); + + + } catch (RaptorException ex) { + logger.error("Exception in generateJSON", ex); + } + return generateJSON(reportRuntime, chartOptionsMap, request, showData); + } public String generateJSON(ReportRuntime reportRuntime, HttpServletRequest request, boolean showData) throws RaptorException { String rotateLabelsStr = ""; rotateLabelsStr = AppUtils.nvl(reportRuntime.getLegendLabelAngle()); - if(rotateLabelsStr.toLowerCase().equals("standard")) { - rotateLabelsStr = "0"; - } else if (rotateLabelsStr.toLowerCase().equals("up45")) { - rotateLabelsStr = "45"; - } else if (rotateLabelsStr.toLowerCase().equals("down45")) { - rotateLabelsStr = "-45"; - } else if (rotateLabelsStr.toLowerCase().equals("up90")) { - rotateLabelsStr = "90"; - } else if (rotateLabelsStr.toLowerCase().equals("down90")) { - rotateLabelsStr = "-90"; - } else - rotateLabelsStr = "0"; + if (rotateLabelsStr.equalsIgnoreCase("standard")) { + rotateLabelsStr = "0"; + } else if (rotateLabelsStr.equalsIgnoreCase("up45")) { + rotateLabelsStr = "45"; + } else if (rotateLabelsStr.equalsIgnoreCase("down45")) { + rotateLabelsStr = "-45"; + } else if (rotateLabelsStr.equalsIgnoreCase("up90")) { + rotateLabelsStr = "90"; + } else if (rotateLabelsStr.equalsIgnoreCase("down90")) { + rotateLabelsStr = "-90"; + } else { + rotateLabelsStr = "0"; + } - HashMap<String,String> chartOptionsMap = new HashMap<String, String>(); + HashMap<String,String> chartOptionsMap = new HashMap<>(); chartOptionsMap.put("width", reportRuntime.getChartWidth()); chartOptionsMap.put("height", reportRuntime.getChartHeight()); - chartOptionsMap.put("animation", new Boolean(reportRuntime.isAnimateAnimatedChart()).toString()); + chartOptionsMap.put("animation", Boolean.toString(reportRuntime.isAnimateAnimatedChart())); chartOptionsMap.put("rotateLabels", rotateLabelsStr); chartOptionsMap.put("staggerLabels", "false"); chartOptionsMap.put("showMaxMin", "false"); - chartOptionsMap.put("showControls", new Boolean(reportRuntime.displayBarControls()).toString()); - chartOptionsMap.put("showLegend", new Boolean(!reportRuntime.hideChartLegend()).toString()); + chartOptionsMap.put("showControls", Boolean.toString(reportRuntime.displayBarControls())); + chartOptionsMap.put("showLegend", Boolean.toString(!reportRuntime.hideChartLegend())); chartOptionsMap.put("topMargin", reportRuntime.getTopMargin()!=null?reportRuntime.getTopMargin().toString():"30"); chartOptionsMap.put("bottomMargin", reportRuntime.getBottomMargin()!=null?reportRuntime.getBottomMargin().toString():"50"); chartOptionsMap.put("leftMargin", reportRuntime.getLeftMargin()!=null?reportRuntime.getLeftMargin().toString():"100"); chartOptionsMap.put("rightMargin", reportRuntime.getRightMargin()!=null?reportRuntime.getRightMargin().toString():"160"); - chartOptionsMap.put("showTitle", new Boolean(reportRuntime.displayChartTitle()).toString()); + chartOptionsMap.put("showTitle", Boolean.toString(reportRuntime.displayChartTitle())); chartOptionsMap.put("subType", (AppUtils.nvl(reportRuntime.getTimeSeriesRender()).equals("area")?reportRuntime.getTimeSeriesRender():"")); - chartOptionsMap.put("stacked", new Boolean(reportRuntime.isChartStacked()).toString()); - chartOptionsMap.put("horizontalBar", new Boolean(reportRuntime.isHorizontalOrientation()).toString()); - chartOptionsMap.put("timeAxis", new Boolean(reportRuntime.isTimeAxis()).toString()); - chartOptionsMap.put("barReduceXAxisLabels", new Boolean(reportRuntime.isLessXaxisTickers()).toString()); + chartOptionsMap.put("stacked", Boolean.toString(reportRuntime.isChartStacked())); + chartOptionsMap.put("horizontalBar", Boolean.toString(reportRuntime.isHorizontalOrientation())); + chartOptionsMap.put("timeAxis", Boolean.toString(reportRuntime.isTimeAxis())); + chartOptionsMap.put("barReduceXAxisLabels", Boolean.toString(reportRuntime.isLessXaxisTickers())); - chartOptionsMap.put("logScale", new Boolean(reportRuntime.isLogScale()).toString()); + chartOptionsMap.put("logScale", Boolean.toString(reportRuntime.isLogScale())); chartOptionsMap.put("precision", "2"); @@ -247,7 +300,7 @@ public class ChartJSONHelper { return generateJSON(reportRuntime, chartOptionsMap, request, showData); } - public String generateJSON(ReportRuntime reportRuntime, HashMap<String,String> chartOptionsMap, HttpServletRequest request, boolean showData) throws RaptorException { + public String generateJSON(ReportRuntime reportRuntime,Map<String, String> chartOptionsMap, HttpServletRequest request, boolean showData) throws RaptorException { //String width, String height, boolean animation, String rotateLabels, boolean staggerLabels, boolean showMaxMin, boolean showLegend, boolean showControls, String topMargin, String bottomMargin, boolean showTitle, String subType String userId = AppUtils.getUserID(request); @@ -375,97 +428,6 @@ public class ChartJSONHelper { chartColumnJSONList.add(ccJSON); } chartJSON.setChartColumnJSONList(chartColumnJSONList); - /* setting formfields show only showForm got triggered*/ - /*ArrayList<IdNameValue> formFieldValues = new ArrayList<IdNameValue>(); - ArrayList<FormFieldJSON> formFieldJSONList = new ArrayList<FormFieldJSON>(); - if(reportRuntime.getReportFormFields()!=null) { - formFieldJSONList = new ArrayList<FormFieldJSON>(reportRuntime.getReportFormFields().size()); - for (Iterator iter = reportRuntime.getReportFormFields().iterator(); iter.hasNext();) { - formFieldValues = new ArrayList<IdNameValue>(); - FormField ff = (FormField) iter.next(); - ff.setDbInfo(reportRuntime.getDbInfo()); - FormFieldJSON ffJSON = new FormFieldJSON(); - ffJSON.setFieldId(ff.getFieldName()); - ffJSON.setFieldType(ff.getFieldType()); - ffJSON.setFieldDisplayName(ff.getFieldDisplayName()); - ffJSON.setHelpText(ff.getHelpText()); - ffJSON.setValidationType(ff.getValidationType()); - //ffJSON.setTriggerOtherFormFields(ff.getDependsOn()); - IdNameList lookup = null; - lookup = ff.getLookupList(); - String selectedValue = ""; - String oldSQL = ""; - IdNameList lookupList = null; - boolean readOnly = false; - if(lookup!=null) { - if(!ff.hasPredefinedList) { - IdNameSql lu = (IdNameSql) lookup; - String SQL = lu.getSql(); - oldSQL = lu.getSql(); - reportRuntime.setTriggerFormFieldCheck( reportRuntime.getReportFormFields(), ff); - ffJSON.setTriggerOtherFormFields(ff.isTriggerOtherFormFields()); - SQL = reportRuntime.parseAndFillReq_Session_UserValues(request, SQL, userId); - SQL = reportRuntime.parseAndFillWithCurrentValues(request, SQL, ff); - String defaultSQL = lu.getDefaultSQL(); - defaultSQL = reportRuntime.parseAndFillReq_Session_UserValues(request, defaultSQL, userId); - defaultSQL = reportRuntime.parseAndFillWithCurrentValues(request, SQL, ff); - lookup = new IdNameSql(-1,SQL,defaultSQL); - - lookupList = lookup; - try { - lookup.loadUserData(0, "", ff.getDbInfo(), ff.getUserId()); - } catch (Exception e ){ e.printStackTrace(); //throw new RaptorRuntimeException(e); - } - } - lookup.trimToSize(); - - String[] requestValue = request.getParameterValues(ff.getFieldName()); - - if(lookup != null && lookup.size() > 0) { - for (lookup.resetNext(); lookup.hasNext();) { - IdNameValue value = lookup.getNext(); - readOnly = value.isReadOnly(); - if(requestValue != null && Arrays.asList(requestValue).contains(value.getId())) { - //if(value.getId().equals(requestValue)) - value.setDefaultValue(true); - } - if(!(ff.getFieldType().equals(FormField.FFT_CHECK_BOX) || ff.getFieldType().equals(FormField.FFT_COMBO_BOX) || ff.getFieldType().equals(FormField.FFT_LIST_BOX) - || ff.getFieldType().equals(FormField.FFT_LIST_MULTI)) && value.isDefaultValue()) - formFieldValues.add(value); - else if(ff.getFieldType().equals(FormField.FFT_CHECK_BOX) || ff.getFieldType().equals(FormField.FFT_COMBO_BOX) || ff.getFieldType().equals(FormField.FFT_LIST_BOX) - || ff.getFieldType().equals(FormField.FFT_LIST_MULTI)) { - formFieldValues.add(value); - } - //break; - } - } else { - if(requestValue!=null && requestValue.length>0) { - IdNameValue value = new IdNameValue(requestValue[0], requestValue[0], true, false); - formFieldValues.add(value); - } - } - - } else { - String[] requestValue = request.getParameterValues(ff.getFieldName()); - if(requestValue!=null && requestValue.length>0) { - IdNameValue value = new IdNameValue(requestValue[0], requestValue[0], true, false); - formFieldValues.add(value); - } - } - if(!ff.hasPredefinedList) { - if(oldSQL != null && !oldSQL.equals("")) { - ((IdNameSql)lookup).setSQL(oldSQL); - } - } - - - - ffJSON.setFormFieldValues(formFieldValues); - formFieldJSONList.add(ffJSON); - } // for - } - chartJSON.setFormFieldList(formFieldJSONList); - chartJSON.setChartSqlWhole(sql);*/ chartJSON.setChartAvailable(displayChart); ChartTypeJSON chartTypeJSON = new ChartTypeJSON(); @@ -687,7 +649,7 @@ public class ChartJSONHelper { } public boolean getFlagInBoolean(String s) { - return nvl(s).toUpperCase().startsWith("Y") || nvl(s).toLowerCase().equals("true"); + return nvl(s).toUpperCase().startsWith("Y") || nvl(s).equalsIgnoreCase("true"); } public DataSet loadChartData(String userId, HttpServletRequest request) throws RaptorException { diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartWebRuntime.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartWebRuntime.java index fcb0541e..361f405d 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartWebRuntime.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartWebRuntime.java @@ -70,7 +70,7 @@ public class ChartWebRuntime implements Serializable { public final String QRY_DATA_REPORT = ""; // Not used planning to use when filter is used - private StringBuffer whereClause = new StringBuffer(""); + private StringBuilder whereClause = new StringBuilder(""); // request used to grab request parameters private HttpServletRequest request; @@ -79,11 +79,11 @@ public class ChartWebRuntime implements Serializable { public ReportData reportData; //Used to pass user information - private final Map<String, Object> params = new HashMap<String, Object>(); + private final Map<String, Object> params = new HashMap<>(); //from chart generator retrieves list of charts to render - public ArrayList chartList; - public ArrayList infoList; + public List chartList; + public List infoList; private String totalSql; @@ -94,8 +94,6 @@ public class ChartWebRuntime implements Serializable { public List getRolesCommaSeperated(HttpServletRequest request) { Map roles = UserUtils.getRoles(request); List roleList = null; -// StringBuffer roleBuf = new StringBuffer(""); - int count = 0; if( roles != null ) { roleList = Arrays.asList(roles.keySet().toArray()); } @@ -119,7 +117,7 @@ public class ChartWebRuntime implements Serializable { long currentTime = System.currentTimeMillis(); HttpSession session = request.getSession(); String action = nvl(request.getParameter(AppConstants.RI_ACTION), request.getParameter("action")); - boolean genReportData = (!action.equals("chart.json") || action.equals("chart.data.json")); + boolean genReportData = (!"chart.json".equals(action) || "chart.data.json".equals(action)); @@ -165,7 +163,7 @@ public class ChartWebRuntime implements Serializable { reportData = getReportData(); - HashMap<String, String> chartOptionsMap = new HashMap<String, String>(); + HashMap<String, String> chartOptionsMap = new HashMap<>(); String rotateLabelsStr = ""; rotateLabelsStr = AppUtils.nvl(reportRuntime.getLegendLabelAngle()); @@ -244,11 +242,11 @@ public class ChartWebRuntime implements Serializable { if(reportRuntime!=null) { - StringBuffer title = new StringBuffer(""); + StringBuilder title = new StringBuilder(""); title.append(reportRuntime.getReportName()); } - if(! (action.equals("chart.json") || action.equals("chart.data.json"))) { + if(! ("chart.json".equals(action) || "chart.data.json".equals(action))) { //Chart @@ -328,28 +326,28 @@ public class ChartWebRuntime implements Serializable { /** * @return the chartList */ - public ArrayList getChartList() { + public List getChartList() { return chartList; } /** * @param chartList the chartList to set */ - public void setChartList(ArrayList chartList) { + public void setChartList(List chartList) { this.chartList = chartList; } /** * @return the infoList */ - public ArrayList getInfoList() { + public List getInfoList() { return infoList; } /** * @param infoList the infoList to set */ - public void setInfoList(ArrayList infoList) { + public void setInfoList(List infoList) { this.infoList = infoList; } @@ -408,7 +406,7 @@ public class ChartWebRuntime implements Serializable { } */ - public String drawD3Charts(HashMap<String,String> chartOptionsMap, HttpServletRequest request) { + public String drawD3Charts(Map<String,String> chartOptionsMap, HttpServletRequest request) { ChartD3Helper chartHelper = new ChartD3Helper(reportRuntime); chartHelper.setChartType(reportRuntime.getChartType()); diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/adapter/RaptorAdapter.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/adapter/RaptorAdapter.java index fd225246..fc5fdb36 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/adapter/RaptorAdapter.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/adapter/RaptorAdapter.java @@ -37,6 +37,7 @@ */ package org.onap.portalsdk.analytics.system.fusion.adapter; +import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; @@ -49,6 +50,8 @@ import java.util.TreeSet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; +import org.hibernate.criterion.Criterion; +import org.hibernate.criterion.Restrictions; import org.onap.portalsdk.analytics.system.AppUtils; import org.onap.portalsdk.core.domain.Menu; import org.onap.portalsdk.core.domain.MenuData; @@ -145,7 +148,10 @@ public class RaptorAdapter extends FusionAdapter { String loginId = ""; try{ - List list = getDataAccessService().getList(User.class, " where user_id = " + userId, null, null); + List<Criterion> restrictionsList = new ArrayList<Criterion>(); + Criterion criterion1 = Restrictions.eq("user_id", userId); + restrictionsList.add(criterion1); + List list = getDataAccessService().getList(User.class, null, restrictionsList, null); if (list != null) { if (!list.isEmpty()) { User user = (User)list.get(0); diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java index dbecbbd8..9e11affe 100644 --- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/system/fusion/web/RaptorControllerAsync.java @@ -452,6 +452,7 @@ public class RaptorControllerAsync extends RestrictedBaseController { ReportDefinition rdef = rh.loadReportDefinition(request, reportID); rdef.setAsCopy(request); request.getSession().setAttribute(AppConstants.SI_REPORT_DEFINITION, rdef); + request.getSession().setAttribute("COPY_REPORT_EVENT", "true"); messageJSON.setMessage("Success- Report Copied."); messageJSON.setAnyStacktrace(rdef.getReportID() + " is Modified and added to session and DB."); @@ -671,12 +672,10 @@ public class RaptorControllerAsync extends RestrictedBaseController { ReportRuntime rr = null; boolean newReport = false; MessageJSON messageJSON = new MessageJSON(); - if("-1".equals(id)) { - id = "Create"; - } try { - if (id.equals("InSession")) { - rdef = (ReportDefinition) request.getSession().getAttribute(AppConstants.SI_REPORT_DEFINITION); + String copyReportEvent = (String)request.getSession().getAttribute("COPY_REPORT_EVENT"); + if (id.equals("InSession") || "true".equals(copyReportEvent)) { + rdef = (ReportDefinition) request.getSession().getAttribute(AppConstants.SI_REPORT_DEFINITION); newReport = false; } else if (id.equals("Create")) { @@ -833,7 +832,7 @@ public class RaptorControllerAsync extends RestrictedBaseController { persistReportDefinition(request, rdef); messageJSON.setMessage("Success Definition of given report is saved in session."); messageJSON.setAnyStacktrace((newReport ? " New Report info is added to Session " - : rdef.getReportID() + " is Modified and added to session and DB.")); + : rdef.getReportID() + "- is Modified and added to session and DB.")); } catch (Exception ex) { messageJSON.setMessage("Error occured while saving definition Tab"); @@ -1389,9 +1388,9 @@ public class RaptorControllerAsync extends RestrictedBaseController { if (!Globals.isSystemInitialized()) { Globals.initializeSystem(servletContext); } - - if (tabId.equals("Def") && id.equals("InSession")) { - rdef = (ReportDefinition) request.getSession().getAttribute(AppConstants.SI_REPORT_DEFINITION); + String copyReportEvent = (String)request.getSession().getAttribute("COPY_REPORT_EVENT"); + if (tabId.equals("Def") && id.equals("InSession") || "true".equals(copyReportEvent)) { + rdef = (ReportDefinition) request.getSession().getAttribute(AppConstants.SI_REPORT_DEFINITION); newReport = false; } else if (tabId.equals("Def") && id.equals("Create")) { diff --git a/ecomp-sdk/epsdk-analytics/src/test/java/org/onap/portalsdk/analytics/system/fusion/adapter/RaptorAdapterTest.java b/ecomp-sdk/epsdk-analytics/src/test/java/org/onap/portalsdk/analytics/system/fusion/adapter/RaptorAdapterTest.java new file mode 100644 index 00000000..34bdd787 --- /dev/null +++ b/ecomp-sdk/epsdk-analytics/src/test/java/org/onap/portalsdk/analytics/system/fusion/adapter/RaptorAdapterTest.java @@ -0,0 +1,83 @@ +/* + * ============LICENSE_START========================================== + * ONAP Portal SDK + * =================================================================== + * Copyright © 2019 AT&T Intellectual Property. All rights reserved. + * =================================================================== + * + * Unless otherwise specified, all software contained herein is licensed + * under the Apache License, Version 2.0 (the "License"); + * you may not use this software except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * Unless otherwise specified, all documentation contained herein is licensed + * under the Creative Commons License, Attribution 4.0 Intl. (the "License"); + * you may not use this documentation except in compliance with the License. + * You may obtain a copy of the License at + * + * https://creativecommons.org/licenses/by/4.0/ + * + * Unless required by applicable law or agreed to in writing, documentation + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * ============LICENSE_END============================================ + * + * + */ + +package org.onap.portalsdk.analytics.system.fusion.adapter; + +import static org.junit.Assert.assertEquals; + +import java.util.ArrayList; +import java.util.List; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mockito; +import org.onap.portalsdk.core.domain.User; +import org.onap.portalsdk.core.service.DataAccessService; +import org.onap.portalsdk.core.web.support.AppUtils; +import org.powermock.api.mockito.PowerMockito; +import org.powermock.core.classloader.annotations.PrepareForTest; +import org.powermock.modules.junit4.PowerMockRunner; + +@RunWith(PowerMockRunner.class) +@PrepareForTest(AppUtils.class) +public class RaptorAdapterTest { + + @Test + public void testGetUserLoginId() { + User user = new User(); + user.setLoginId("test"); + List<User> userList = new ArrayList<>(); + userList.add(user); + DataAccessService mockDataAccessService = Mockito.mock(DataAccessService.class); + PowerMockito.mockStatic(AppUtils.class); + PowerMockito.when(AppUtils.getDataAccessService()).thenReturn(mockDataAccessService); + Mockito.doReturn(userList).when(mockDataAccessService).getList(Mockito.eq(User.class), Mockito.eq(null), Mockito.anyList(), Mockito.eq(null)); + String loginID = RaptorAdapter.getUserLoginId("1"); + assertEquals("test",loginID); + } + + @Test + public void testGetUserLoginIdWithNullList() { + DataAccessService mockDataAccessService = Mockito.mock(DataAccessService.class); + PowerMockito.mockStatic(AppUtils.class); + PowerMockito.when(AppUtils.getDataAccessService()).thenReturn(mockDataAccessService); + Mockito.doReturn(null).when(mockDataAccessService).getList(Mockito.eq(User.class), Mockito.eq(null), Mockito.anyList(), Mockito.eq(null)); + String loginID = RaptorAdapter.getUserLoginId("1"); + assertEquals("",loginID); + } +} |