diff --git a/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/common/TafPeriod.java b/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/common/TafPeriod.java index 44b0457599..bd315aef7f 100644 --- a/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/common/TafPeriod.java +++ b/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/common/TafPeriod.java @@ -115,10 +115,11 @@ public class TafPeriod implements Serializable { */ public static TafPeriod copy(TafPeriod period) { TafPeriod periodCopy = new TafPeriod(); - periodCopy.startDate = (Calendar) period.startDate.clone(); - periodCopy.transitionEndDate = (Calendar) period.transitionEndDate - .clone(); - periodCopy.endDate = (Calendar) period.endDate.clone(); + /* these may be null */ + periodCopy.startDate = TimeUtil.newCalendar(period.startDate); + periodCopy.transitionEndDate = TimeUtil + .newCalendar(period.transitionEndDate); + periodCopy.endDate = TimeUtil.newCalendar(period.endDate); return periodCopy; } diff --git a/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/decoder/TAFChangeGroupFactory.java b/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/decoder/TAFChangeGroupFactory.java index 8db9ea60d4..27ca98f5b9 100644 --- a/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/decoder/TAFChangeGroupFactory.java +++ b/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/decoder/TAFChangeGroupFactory.java @@ -583,12 +583,13 @@ public class TAFChangeGroupFactory { period1 = group1.getTafChangePeriod(); period2 = group2.getTafChangePeriod(); - period1.setEndDate((Calendar) period2.getStartDate() - .clone()); + period1.setEndDate(TimeUtil.newCalendar(period2 + .getStartDate())); } // The last group gets the TAF end datetime. - period2.setEndDate((Calendar) validPeriod.getEndDate().clone()); + period2.setEndDate(TimeUtil.newCalendar(validPeriod + .getEndDate())); } record.setIssue_time(issueTime.getTime()); diff --git a/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/decoder/TAFParser.java b/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/decoder/TAFParser.java index 0f4c555b90..57749f03c7 100644 --- a/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/decoder/TAFParser.java +++ b/edexOsgi/com.raytheon.edex.plugin.taf/src/com/raytheon/edex/plugin/taf/decoder/TAFParser.java @@ -152,10 +152,10 @@ public class TAFParser { int currGroup = 0; for (String grp : tafGroups) { - Calendar cStart = (Calendar) validPeriod.getStartDate() - .clone(); - Calendar cStop = (Calendar) validPeriod.getEndDate() - .clone(); + Calendar cStart = TimeUtil.newCalendar(validPeriod + .getStartDate()); + Calendar cStop = TimeUtil.newCalendar(validPeriod + .getEndDate()); TafPeriod tPeriod = new TafPeriod(cStart, cStop); ChangeGroup group = new ChangeGroup(grp, tPeriod); @@ -194,8 +194,8 @@ public class TAFParser { period1 = group1.getTafChangePeriod(); period2 = group2.getTafChangePeriod(); - period1.setEndDate((Calendar) period2 - .getStartDate().clone()); + period1.setEndDate(TimeUtil.newCalendar(period2 + .getStartDate())); } period2.setEndDate((Calendar) validPeriod.getEndDate() diff --git a/ncep/gov.noaa.nws.ncep.common.dataplugin.nctaf/src/gov/noaa/nws/ncep/common/dataplugin/nctaf/NcTafPeriod.java b/ncep/gov.noaa.nws.ncep.common.dataplugin.nctaf/src/gov/noaa/nws/ncep/common/dataplugin/nctaf/NcTafPeriod.java index 2e20987196..eaff257907 100644 --- a/ncep/gov.noaa.nws.ncep.common.dataplugin.nctaf/src/gov/noaa/nws/ncep/common/dataplugin/nctaf/NcTafPeriod.java +++ b/ncep/gov.noaa.nws.ncep.common.dataplugin.nctaf/src/gov/noaa/nws/ncep/common/dataplugin/nctaf/NcTafPeriod.java @@ -102,10 +102,9 @@ public class NcTafPeriod implements Serializable { */ public static NcTafPeriod copy(NcTafPeriod period) { NcTafPeriod periodCopy = new NcTafPeriod(); - periodCopy.startDate = (Calendar) period.startDate.clone(); - periodCopy.transitionEndDate = (Calendar) period.transitionEndDate - .clone(); - periodCopy.endDate = (Calendar) period.endDate.clone(); + periodCopy.startDate = TimeUtil.newCalendar(period.startDate); + periodCopy.transitionEndDate = TimeUtil.newCalendar(period.transitionEndDate); + periodCopy.endDate = TimeUtil.newCalendar(period.endDate); return periodCopy; } diff --git a/ncep/gov.noaa.nws.ncep.edex.plugin.nctaf/src/gov/noaa/nws/ncep/edex/plugin/nctaf/decoder/NcTafChangeGroupFactory.java b/ncep/gov.noaa.nws.ncep.edex.plugin.nctaf/src/gov/noaa/nws/ncep/edex/plugin/nctaf/decoder/NcTafChangeGroupFactory.java index 9f37797663..b9ecb63945 100644 --- a/ncep/gov.noaa.nws.ncep.edex.plugin.nctaf/src/gov/noaa/nws/ncep/edex/plugin/nctaf/decoder/NcTafChangeGroupFactory.java +++ b/ncep/gov.noaa.nws.ncep.edex.plugin.nctaf/src/gov/noaa/nws/ncep/edex/plugin/nctaf/decoder/NcTafChangeGroupFactory.java @@ -527,12 +527,13 @@ public class NcTafChangeGroupFactory { period1 = group1.getTafChangePeriod(); period2 = group2.getTafChangePeriod(); - period1.setEndDate((Calendar) period2.getStartDate() - .clone()); + period1.setEndDate(TimeUtil.newCalendar(period2 + .getStartDate())); } // The last group gets the TAF end datetime. - period2.setEndDate((Calendar) validPeriod.getEndDate().clone()); + period2.setEndDate(TimeUtil.newCalendar(validPeriod + .getEndDate())); } record.setIssue_time(issueTime.getTime()); @@ -642,12 +643,13 @@ public class NcTafChangeGroupFactory { period1 = group1.getTafChangePeriod(); period2 = group2.getTafChangePeriod(); - period1.setEndDate((Calendar) period2.getStartDate() - .clone()); + period1.setEndDate(TimeUtil.newCalendar(period2 + .getStartDate())); } // The last group gets the TAF end datetime. - period2.setEndDate((Calendar) validPeriod.getEndDate().clone()); + period2.setEndDate(TimeUtil.newCalendar(validPeriod + .getEndDate())); } record.setIssue_time(issueTime.getTime());