summaryrefslogtreecommitdiffstats
path: root/ecomp-sdk/epsdk-analytics/src/main/java/org/openecomp/portalsdk/analytics/view/CrossTabOrderManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-sdk/epsdk-analytics/src/main/java/org/openecomp/portalsdk/analytics/view/CrossTabOrderManager.java')
-rw-r--r--ecomp-sdk/epsdk-analytics/src/main/java/org/openecomp/portalsdk/analytics/view/CrossTabOrderManager.java98
1 files changed, 98 insertions, 0 deletions
diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/openecomp/portalsdk/analytics/view/CrossTabOrderManager.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/openecomp/portalsdk/analytics/view/CrossTabOrderManager.java
new file mode 100644
index 00000000..090fd863
--- /dev/null
+++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/openecomp/portalsdk/analytics/view/CrossTabOrderManager.java
@@ -0,0 +1,98 @@
+/*-
+ * ================================================================================
+ * eCOMP Portal SDK
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file 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.
+ * ================================================================================
+ */
+package org.openecomp.portalsdk.analytics.view;
+
+import java.util.*;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.openecomp.portalsdk.analytics.RaptorObject;
+import org.openecomp.portalsdk.analytics.error.*;
+import org.openecomp.portalsdk.analytics.model.runtime.*;
+import org.openecomp.portalsdk.analytics.system.*;
+import org.openecomp.portalsdk.analytics.util.*;
+import org.openecomp.portalsdk.analytics.xmlobj.*;
+
+public class CrossTabOrderManager extends RaptorObject {
+ private Vector colHeaderValues = null;
+
+ private Vector rowHeaderValues = null;
+
+
+ public CrossTabOrderManager(ReportRuntime rr, String userId,HttpServletRequest request) throws RaptorException {
+ colHeaderValues = new Vector();
+ rowHeaderValues = new Vector();
+
+ for (Iterator iter = rr.getAllColumns().iterator(); iter.hasNext();) {
+ DataColumnType dct = (DataColumnType) iter.next();
+ if (nvl(dct.getCrossTabValue()).equals(AppConstants.CV_COLUMN)) {
+ if(rr.getColumnById(dct.getColId()+"_sort")!=null) {
+ dct = rr.getColumnById(dct.getColId()+"_sort");
+ colHeaderValues.add(new CrossTabColumnValues(dct.getColId(), rr
+ .generateDistinctValuesSQL(dct, userId,request), rr.getDbInfo()));
+ } else
+ colHeaderValues.add(new CrossTabColumnValues(dct.getColId(), rr
+ .generateDistinctValuesSQL(dct, userId,request), rr.getDbInfo()));
+ }
+ else if (nvl(dct.getCrossTabValue()).equals(AppConstants.CV_ROW))
+ rowHeaderValues.add(new CrossTabColumnValues(dct.getColId(), rr
+ .generateDistinctValuesSQL(dct, userId,request), rr.getDbInfo()));
+ else if (nvl(dct.getCrossTabValue()).trim().length()<=0)
+ rowHeaderValues.add(new CrossTabColumnValues(dct.getColId(), rr
+ .generateDistinctValuesSQL(dct, userId,request), rr.getDbInfo()));
+ } // for
+ } // CrossTabOrderManager
+
+ public int getIndexOfColHeaderValue(int colIdx, String value) {
+ return ((CrossTabColumnValues) colHeaderValues.get(colIdx)).getIndexOf(value);
+ } // getIndexOfColHeaderValue
+
+ public int getIndexOfColHeaderValue(int colIdx, int value) {
+ return ((CrossTabColumnValues) colHeaderValues.get(colIdx)).getIndexOf(value);
+ } // getIndexOfColHeaderValue
+
+ public boolean isAfterColHeaderValue(int colIdx, String curValue, String newValue) {
+ return (getIndexOfColHeaderValue(colIdx, curValue) > getIndexOfColHeaderValue(colIdx,
+ newValue));
+ } // isBeforeColHeaderValue
+
+ public boolean isAfterColHeaderValue(int colIdx, int curValue, Integer newValue) {
+ return (getIndexOfColHeaderValue(colIdx, curValue) > getIndexOfColHeaderValue(colIdx,
+ newValue.intValue()));
+ } // isBeforeColHeaderValue
+
+ public int getIndexOfRowHeaderValue(int rowIdx, String value) {
+ return ((CrossTabColumnValues) rowHeaderValues.get(rowIdx)).getIndexOf(value);
+ } // getIndexOfRowHeaderValue
+
+ public boolean isAfterRowHeaderValue(int rowIdx, String curValue, String newValue) {
+ return (getIndexOfRowHeaderValue(rowIdx, curValue) > getIndexOfRowHeaderValue(rowIdx,
+ newValue));
+ } // isBeforeRowHeaderValue
+
+ public Vector getRowHeaderValues() {
+ return rowHeaderValues;
+ }
+
+ public void setRowHeaderValues(Vector rowHeaderValues) {
+ this.rowHeaderValues = rowHeaderValues;
+ }
+
+} // CrossTabOrderManager