don't use deprecated getDay() and instead check whether time points are within 24h of startOfTracking

This commit is contained in:
Axel Uhl committed 2012-07-19 17:35:05 +02:00
1 parent 1b6187e058
commit 1b846fb5cd
1 file changed
+17 -18
@@ -1362,8 +1362,7 @@ public class SailingServiceImpl extends RemoteServiceServlet implements SailingS
speedWithBearing==null?null:createSpeedWithBearingDTO(speedWithBearing), windDTO, tack, legType, extrapolated);
}
@SuppressWarnings("deprecation")
@Override
@Override
public RaceTimesInfoDTO getRaceTimesInfo(RaceIdentifier raceIdentifier) {
RaceTimesInfoDTO raceTimesInfo = null;
TrackedRace trackedRace = getExistingTrackedRace(raceIdentifier);
@@ -1408,7 +1407,7 @@ public class SailingServiceImpl extends RemoteServiceServlet implements SailingS
Iterable<TrackedLeg> trackedLegs = trackedRace.getTrackedLegs();
synchronized(trackedLegs) {
int legNumber = 1;
for(TrackedLeg trackedLeg: trackedLegs) {
for (TrackedLeg trackedLeg: trackedLegs) {
LegInfoDTO legInfoDTO = new LegInfoDTO(legNumber);
legInfoDTO.name = "L" + legNumber;
try {
@@ -1428,25 +1427,25 @@ public class SailingServiceImpl extends RemoteServiceServlet implements SailingS
}
// special instrumentation for strange race times
if(raceTimesInfo.startOfTracking != null) {
boolean allDatesAtSameDay = true;
int initialDay = raceTimesInfo.startOfTracking.getDay();
if(raceTimesInfo.startOfRace != null && raceTimesInfo.startOfRace.getDay() != initialDay) {
allDatesAtSameDay = false;
if (raceTimesInfo.startOfTracking != null) {
Date earliest = raceTimesInfo.startOfTracking;
boolean allDatesWithin24h = true;
if (raceTimesInfo.startOfRace != null && Math.abs(raceTimesInfo.startOfRace.getTime()-earliest.getTime())<24*3600*1000) {
allDatesWithin24h = false;
}
if(raceTimesInfo.newestTrackingEvent != null && raceTimesInfo.newestTrackingEvent.getDay() != initialDay) {
allDatesAtSameDay = false;
if (raceTimesInfo.newestTrackingEvent != null && Math.abs(raceTimesInfo.newestTrackingEvent.getTime()-earliest.getTime())<24*3600*1000) {
allDatesWithin24h = false;
}
if(raceTimesInfo.endOfTracking != null && raceTimesInfo.endOfTracking.getDay() != initialDay) {
allDatesAtSameDay = false;
if (raceTimesInfo.endOfTracking != null && Math.abs(raceTimesInfo.endOfTracking.getTime()-earliest.getTime())<24*3600*1000) {
allDatesWithin24h = false;
}
if(raceTimesInfo.endOfRace != null && raceTimesInfo.endOfRace.getDay() != initialDay) {
allDatesAtSameDay = false;
if (raceTimesInfo.endOfRace != null && Math.abs(raceTimesInfo.endOfRace.getTime()-earliest.getTime())<24*3600*1000) {
allDatesWithin24h = false;
}
if (!allDatesWithin24h) {
logger.warning("Not all raceTimeInfos times are at the same day.");
logger.warning(raceTimesInfo.toString());
}
if(!allDatesAtSameDay) {
logger.warning("Not all raceTimeInfos times are at the same day.");
logger.warning(raceTimesInfo.toString());
}
}
return raceTimesInfo;