summaryrefslogtreecommitdiffstats
path: root/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartD3Helper.java
diff options
context:
space:
mode:
Diffstat (limited to 'ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartD3Helper.java')
-rw-r--r--ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartD3Helper.java105
1 files changed, 79 insertions, 26 deletions
diff --git a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartD3Helper.java b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartD3Helper.java
index 80860912..ec83ffbf 100644
--- a/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartD3Helper.java
+++ b/ecomp-sdk/epsdk-analytics/src/main/java/org/onap/portalsdk/analytics/model/runtime/ChartD3Helper.java
@@ -47,6 +47,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Enumeration;
+import java.util.GregorianCalendar;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@@ -54,6 +55,7 @@ import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.SortedSet;
+import java.util.TimeZone;
import java.util.TreeSet;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -68,6 +70,7 @@ import org.onap.portalsdk.analytics.model.ReportHandler;
import org.onap.portalsdk.analytics.model.base.ChartSeqComparator;
import org.onap.portalsdk.analytics.system.AppUtils;
import org.onap.portalsdk.analytics.system.ConnectionUtils;
+import org.onap.portalsdk.analytics.system.Globals;
import org.onap.portalsdk.analytics.util.AppConstants;
import org.onap.portalsdk.analytics.util.DataSet;
import org.onap.portalsdk.analytics.util.HtmlStripper;
@@ -1804,6 +1807,9 @@ public class ChartD3Helper {
}
wholeScript.append(" .tickFormat(function(d) { \n");
+ wholeScript.append(" var local_dt = new Date(); \n var utc = d + (local_dt.getTimezoneOffset() * 60000);\n");
+ wholeScript.append(" var nd = new Date(utc + (3600000*"+getCurrentTimezoneOffset()+")); ");
+
if(formatFlag==DAYFLAG)
wholeScript.append(" return d3.time.format('%m/%d/%Y')(new Date(d)) }); \n");
else if(formatFlag==HOURFLAG)
@@ -3569,6 +3575,11 @@ public class ChartD3Helper {
return title;
}
+ public java.util.Date timezoneConversion(SimpleDateFormat sdf, String dateStr) {
+ // sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
+ return sdf.parse(dateStr, new ParsePosition(0));
+ }
+
public java.util.Date getDateFromDateStr(String dateStr) {
SimpleDateFormat MMDDYYYYFormat = new SimpleDateFormat("MM/dd/yyyy");
SimpleDateFormat EEEMMDDYYYYFormat = new SimpleDateFormat("EEE, MM/dd/yyyy"); //2012-11-01 00:00:00
@@ -3619,117 +3630,142 @@ public class ChartD3Helper {
int flagDate = 10;
*/
- date = MMDDYYYYHHMMSSFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMDDYYYYHHMMSSFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMDDYYYYHHMMSSFormat, dateStr);
if(date!=null) formatFlag = SECFLAG;
if(date==null) {
- date = EEEMMDDYYYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = EEEMMDDYYYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(EEEMMDDYYYYFormat, dateStr);
if(date!=null) formatFlag = DAYOFTHEWEEKFLAG;
}
if(date==null) {
- date = MMDDYYYYHHMMFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMDDYYYYHHMMFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMDDYYYYHHMMFormat, dateStr);
if(date!=null) formatFlag = MINFLAG;
}
if(date==null) {
//MMDDYYYYHHFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
- date = MMDDYYYYHHFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMDDYYYYHHFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMDDYYYYHHFormat, dateStr);
if(date!=null) formatFlag = HOURFLAG;
}
if(date==null) {
- date = MMDDYYYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMDDYYYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMDDYYYYFormat, dateStr);
if(date!=null) formatFlag = DAYFLAG;
}
if(date==null) {
- date = YYYYMMDDFormat.parse(dateStr, new ParsePosition(0));
+ //date = YYYYMMDDFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(YYYYMMDDFormat, dateStr);
if(date!=null) formatFlag = DAYFLAG;
}
if(date==null) {
- date = timestampFormat.parse(dateStr, new ParsePosition(0));
+ //date = timestampFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(timestampFormat, dateStr);
if(date!=null) formatFlag = SECFLAG;
}
if(date==null) {
- date = timestampHrFormat.parse(dateStr, new ParsePosition(0));
+ //date = timestampHrFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(timestampHrFormat, dateStr);
if(date!=null) formatFlag = HOURFLAG;
}
if(date==null) {
- date = timestampDayFormat.parse(dateStr, new ParsePosition(0));
+ //date = timestampDayFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(timestampDayFormat, dateStr);
if(date!=null) formatFlag = DAYFLAG;
}
if(date==null) {
- date = MONYYYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = MONYYYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MONYYYYFormat, dateStr);
if(date!=null) formatFlag = MONTHFLAG;
}
if(date==null) {
- date = MMYYYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMYYYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMYYYYFormat, dateStr);
if(date!=null) formatFlag = MONTHFLAG;
}
if(date==null) {
- date = MMMMMDDYYYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMMMMDDYYYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMMMMDDYYYYFormat, dateStr);
if(date!=null) formatFlag = DAYFLAG;
}
if(date==null) {
- date = MONTHYYYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = MONTHYYYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MONTHYYYYFormat, dateStr);
if(date!=null) formatFlag = MONTHFLAG;
}
if(date==null) {
- date = YYYYMMDDHHMMSSFormat.parse(dateStr, new ParsePosition(0));
+ //date = YYYYMMDDHHMMSSFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(YYYYMMDDHHMMSSFormat, dateStr);
if(date!=null) formatFlag = SECFLAG;
}
if(date==null) {
- date = YYYYMMDDHHMMFormat.parse(dateStr, new ParsePosition(0));
+ //date = YYYYMMDDHHMMFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(YYYYMMDDHHMMFormat, dateStr);
if(date!=null) formatFlag = MINFLAG;
}
if(date==null) {
- date = DDMONYYYYHHMMSSFormat.parse(dateStr, new ParsePosition(0));
+ //date = DDMONYYYYHHMMSSFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(DDMONYYYYHHMMSSFormat, dateStr);
if(date!=null) formatFlag = SECFLAG;
}
if(date==null) {
- date = DDMONYYYYHHMMFormat.parse(dateStr, new ParsePosition(0));
+ //date = DDMONYYYYHHMMFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(DDMONYYYYHHMMFormat, dateStr);
if(date!=null) formatFlag = MINFLAG;
}
if(date==null) {
- date = DDMONYYYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = DDMONYYYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(DDMONYYYYFormat, dateStr);
if(date!=null) formatFlag = DAYFLAG;
}
if(date==null) {
- date = MMDDYYHHMMSSFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMDDYYHHMMSSFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMDDYYHHMMSSFormat, dateStr);
if(date!=null) formatFlag = SECFLAG;
}
if(date==null) {
- date = MMDDYYHHMMFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMDDYYHHMMFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMDDYYHHMMFormat, dateStr);
if(date!=null) formatFlag = MINFLAG;
}
if(date==null) {
- date = MMDDYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMDDYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMDDYYFormat, dateStr);
if(date!=null) formatFlag = DAYFLAG;
}
if(date==null) {
- date = timestampFormat1.parse(dateStr, new ParsePosition(0));
+ //date = timestampFormat1.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(timestampFormat1, dateStr);
if(date!=null) formatFlag = SECFLAG;
}
if(date==null) {
- date = MMDDYYYYHHMMZFormat.parse(dateStr, new ParsePosition(0));
+ //date = MMDDYYYYHHMMZFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(MMDDYYYYHHMMZFormat, dateStr);
if(date!=null) formatFlag = MINFLAG;
}
if(date==null) {
- date = YYYYFormat.parse(dateStr, new ParsePosition(0));
+ //date = YYYYFormat.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(YYYYFormat, dateStr);
/* Some random numbers should not satisfy this year format. */
if(dateStr.length()>4) date = null;
if(date!=null) formatFlag = YEARFLAG;
}
if(date==null) {
- date = timestamp_W_dash.parse(dateStr, new ParsePosition(0));
+ //date = timestamp_W_dash.parse(dateStr, new ParsePosition(0));
+ date = timezoneConversion(timestamp_W_dash, dateStr);
if(date!=null) formatFlag = SECFLAG;
}
if(date==null)
@@ -4085,6 +4121,23 @@ public class ChartD3Helper {
return valuesMap;
- }
+ }
+
+ public static int getCurrentTimezoneOffset() {
+
+ TimeZone tz = TimeZone.getDefault();
+ java.util.Calendar cal = GregorianCalendar.getInstance(tz);
+ int offsetInMillis = tz.getOffset(cal.getTimeInMillis());
+ int hourOffset = Math.abs(offsetInMillis / 3600000) * 60;
+ boolean isDST = tz.inDaylightTime(new java.util.Date());
+ if(isDST){
+ hourOffset += 60;
+ }
+ int offset = hourOffset + Math.abs((offsetInMillis / 60000) % 60);
+ if (offsetInMillis > 0)
+ offset *= -1;
+
+ return Globals.getTimezoneOffset();
+ }
}