diff options
author | Christopher Lott (cl778h) <clott@research.att.com> | 2017-08-31 15:16:38 -0400 |
---|---|---|
committer | Christopher Lott (cl778h) <clott@research.att.com> | 2017-08-31 15:42:50 -0400 |
commit | 7f535078ef80a7b7efa3e3325bfccb994fbd00e8 (patch) | |
tree | 66d908df2eb7cf0b048f754eac6b44619255eb8a /ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/util/upgrade/SystemUpgrade.java | |
parent | 224487bc124df7988442a60d72d4aa106697306b (diff) |
Rename packages to org.onap in 1.4.0-SNAPSHOT
19 - remove openecomp
72 - remediate Sonar scan issues
79 - removed unwanted left menu under Report
90 - apply approved license text
Issue: PORTAL-19, PORTAL-72, PORTAL-79, PORTAL-90
Change-Id: I41a0ef5fba623d2242574bd15f2d9fb8029a496c
Signed-off-by: Christopher Lott (cl778h) <clott@research.att.com>
Diffstat (limited to 'ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/util/upgrade/SystemUpgrade.java')
-rw-r--r-- | ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/util/upgrade/SystemUpgrade.java | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/util/upgrade/SystemUpgrade.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/util/upgrade/SystemUpgrade.java new file mode 100644 index 00000000..d8a6635e --- /dev/null +++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/util/upgrade/SystemUpgrade.java @@ -0,0 +1,145 @@ +/* + * ============LICENSE_START========================================== + * ONAP Portal SDK + * =================================================================== + * Copyright © 2017 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============================================ + * + * ECOMP is a trademark and service mark of AT&T Intellectual Property. + */ +package org.onap.portalsdk.analytics.util.upgrade; + +import java.io.*; +import java.sql.*; +import java.util.*; +import javax.servlet.http.*; + +import org.onap.portalsdk.analytics.controller.*; +import org.onap.portalsdk.analytics.error.*; +import org.onap.portalsdk.analytics.model.*; +import org.onap.portalsdk.analytics.model.base.*; +import org.onap.portalsdk.analytics.model.definition.*; +import org.onap.portalsdk.analytics.model.runtime.*; +import org.onap.portalsdk.analytics.system.*; +import org.onap.portalsdk.analytics.util.*; +import org.onap.portalsdk.analytics.view.*; +import org.onap.portalsdk.analytics.xmlobj.*; + +public class SystemUpgrade extends org.onap.portalsdk.analytics.RaptorObject { + private static final String upgradeFromVersion = "1.x"; + private static final String upgradeToVersion = "2.0"; + +/* This script upgrades the Raptor database to a newer version + Make sure you execute the "upgrade_v0_to_v1_0_before_java.sql" before running this + and "upgrade_v0_to_v1_0_after_java.sql" afterwards + + URL example: http://localhost:8082/databank/dispatcher?action=raptor&r_action=system_upgrade +*/ + public static String upgradeDB(HttpServletRequest request) { + request.setAttribute("system_message", "System upgrade disabled"); + return "raptor/blank.jsp"; + +/* try { + if(upgradeFromVersion.equals("1.x")&&upgradeToVersion.equals("2.0")) + upgrateFromV1ToV2_0(request); + else + throw new RuntimeException("Invalid version"); + + return "raptor/blank.jsp"; + } catch(Exception e) { + return (new ErrorHandler()).processFatalError(request, e); + }*/ + } // upgradeDB + + private static void upgrateFromV1ToV2_0(HttpServletRequest request) throws Exception { + StringBuffer log = new StringBuffer(); + log.append("Starting upgrade...<br>\n"); + + DataSet ds = DbUtils.executeQuery("SELECT cr.rep_id, cr.sched_mailto_user_ids FROM cr_report cr"); + for(int i=0; i<ds.getRowCount(); i++) { + String repId = ds.getString(i, 0); + log.append("<li>Processing report ["+repId+"]: "); + + Connection connection = DbUtils.startTransaction(); + String emailIds = nvls(ds.getString(i, 1)); + if(emailIds.length()>0) + try { + log.append("Converting emails "); + StringTokenizer st = new StringTokenizer(emailIds, ","); + while(st.hasMoreTokens()) { + String userId = nvls(st.nextToken()); + log.append(userId); + if(userId.length()>0) + DbUtils.executeUpdate(connection, "INSERT INTO cr_report_schedule_users (rep_id, user_id) VALUES ("+repId+", "+userId+")"); + log.append("-success, "); + } // while + log.append(" <font color=green>COMPLETED</font>; "); + } catch(Exception e) { + log.append("-<font color=red>FAILED</font>; "); + } + + String reportXML = ReportLoader.loadCustomReportXML(repId); + ReportDefinition rdef = ReportDefinition.unmarshal(reportXML, repId, request); + ReportWrapper rw = new ReportWrapper(rdef.cloneCustomReport(), repId, null, null, null, null, null, null, false); + + for(Iterator iter=rw.getAllColumns().iterator(); iter.hasNext(); ) { + DataColumnType col = (DataColumnType) iter.next(); + String drillDownURL = nvls(col.getDrillDownURL()); + if(drillDownURL.startsWith("dispatcher?action=custrep.run&c_master=")) { + drillDownURL = AppUtils.getReportExecuteActionURL()+drillDownURL.substring("dispatcher?action=custrep.run&c_master=".length()); + log.append("Drill-down processed; "); + col.setDrillDownURL(drillDownURL); + } + } // for + + reportXML = rw.marshal(); + + /*PrintWriter xmlOut = new PrintWriter(new BufferedWriter(new FileWriter(new File(AppUtils.getTempFolderPath()+AppUtils.getUserID(request))))); + xmlOut.println(reportXML); + xmlOut.close();*/ + + try { + ReportLoader.updateCustomReportRec(connection, rw, reportXML); + DbUtils.commitTransaction(connection); + log.append("<font color=green>REPORT UPDATED</font></li>\n"); + } catch(Exception e) { + log.append("<font color=red>REPORT UPDATE FAILED</font></li>\n"); + DbUtils.rollbackTransaction(connection); + } finally { + DbUtils.clearConnection(connection); + } + } // for + + log.append("<br>\nSystem upgrade successfully completed...<br>\n"); + request.setAttribute("system_message", log.toString()); + } // upgrateFromV1ToV2_0 + +} // SystemUpgrade |