mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-27 14:27:15 +00:00
Races lists - Temporary adjustements to RaceView DTOs
This commit is contained in:
1 parent
757113094b
commit
03b686e27d
3 files changed
+39
-26
No files matched your search
+12
-15
@@ -1,6 +1,8 @@
|
||||
package com.sap.sailing.gwt.ui.shared.dispatch.event;
|
||||
|
||||
import java.util.UUID;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
|
||||
import com.google.gwt.core.shared.GwtIncompatible;
|
||||
import com.sap.sailing.gwt.ui.shared.dispatch.Action;
|
||||
@@ -9,8 +11,10 @@ import com.sap.sailing.gwt.ui.shared.dispatch.ResultWithTTL;
|
||||
|
||||
public class GetRaceListViewAction implements Action<ResultWithTTL<RaceListViewDTO>> {
|
||||
|
||||
private static final Logger logger = Logger.getLogger(GetRaceListViewAction.class.getName());
|
||||
|
||||
private UUID eventId;
|
||||
|
||||
|
||||
public GetRaceListViewAction() {
|
||||
}
|
||||
|
||||
@@ -21,20 +25,13 @@ public class GetRaceListViewAction implements Action<ResultWithTTL<RaceListViewD
|
||||
@Override
|
||||
@GwtIncompatible
|
||||
public ResultWithTTL<RaceListViewDTO> execute(DispatchContext context) {
|
||||
final RaceListViewDTO result = new RaceListViewDTO();
|
||||
result.setLiveRaces(new GetLiveRacesForEventAction(eventId).execute(context).getDto());
|
||||
long start = System.currentTimeMillis();
|
||||
RaceListDataCalculator raceListDataCalculator = new RaceListDataCalculator();
|
||||
RacesActionUtil.forRacesOfEvent(context, eventId, raceListDataCalculator);
|
||||
ResultWithTTL<RaceListViewDTO> result = raceListDataCalculator.getResult();
|
||||
|
||||
// RacesActionUtil.forRacesOfEvent(context, eventId, new RaceCallback() {
|
||||
// @Override
|
||||
// public void doForRace(RaceContext rc) {
|
||||
// // TODO better condition after Frank implemented race state stuff
|
||||
// if(!rc.isRaceDefinitionAvailable() || !rc.isRaceLogAvailable() || !rc.isLive() || !rc.isStartTimeAvailable()) {
|
||||
// return;
|
||||
// }
|
||||
//
|
||||
// result.addRace(rc.getLiveRaceDTO());
|
||||
// }
|
||||
// });
|
||||
return new ResultWithTTL<>(5000, result);
|
||||
long duration = System.currentTimeMillis() - start;
|
||||
logger.log(Level.INFO, "Calculating race list for event "+ eventId + " took: "+ duration + "ms");
|
||||
return result;
|
||||
}
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
package com.sap.sailing.gwt.ui.shared.dispatch.event;
|
||||
|
||||
import com.google.gwt.core.shared.GwtIncompatible;
|
||||
import com.sap.sailing.gwt.ui.shared.dispatch.ResultWithTTL;
|
||||
import com.sap.sailing.gwt.ui.shared.dispatch.event.RacesActionUtil.RaceCallback;
|
||||
|
||||
@GwtIncompatible
|
||||
public class RaceListDataCalculator implements RaceCallback {
|
||||
|
||||
private final RaceListViewDTO result = new RaceListViewDTO();
|
||||
|
||||
@Override
|
||||
public void doForRace(RaceContext context) {
|
||||
context.addLiveRace(result.getLiveRaces());
|
||||
}
|
||||
|
||||
public ResultWithTTL<RaceListViewDTO> getResult() {
|
||||
return new ResultWithTTL<>(5000, result);
|
||||
}
|
||||
|
||||
}
|
||||
+6
-11
@@ -11,7 +11,7 @@ import com.sap.sailing.gwt.ui.shared.race.RaceMetadataDTO;
|
||||
|
||||
public class RaceListViewDTO implements DTO {
|
||||
|
||||
private LiveRacesDTO liveRaces;
|
||||
private LiveRacesDTO liveRaces = new LiveRacesDTO();
|
||||
|
||||
private ArrayList<RaceListRaceDTO> allRaces = new ArrayList<>();
|
||||
|
||||
@@ -19,21 +19,16 @@ public class RaceListViewDTO implements DTO {
|
||||
// TODO implement based on race.getStart();
|
||||
}
|
||||
|
||||
public void setLiveRaces(LiveRacesDTO liveRaces) {
|
||||
this.liveRaces = new LiveRacesDTO();
|
||||
for (int i = 0; i < liveRaces.getRaces().size(); i++) {
|
||||
LiveRaceDTO liveRace = liveRaces.getRaces().get(i);
|
||||
if (i < 3) this.liveRaces.addRace(liveRace);
|
||||
allRaces.add(convert(liveRace));
|
||||
}
|
||||
}
|
||||
|
||||
public LiveRacesDTO getLiveRaces() {
|
||||
return liveRaces;
|
||||
}
|
||||
|
||||
public List<RaceListRaceDTO> getAllRaces() {
|
||||
return allRaces;
|
||||
ArrayList<RaceListRaceDTO> list = new ArrayList<RaceListRaceDTO>(liveRaces.getRaces().size());
|
||||
for (LiveRaceDTO liveRace : liveRaces.getRaces()) {
|
||||
list.add(convert(liveRace));
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
public Collection<RaceListSeriesDTO> getRacesForCompetitionFormat() {
|
||||
|
||||
Reference in new issue
Block a user