more fixes regarding race removal and leaderboard configuration

This commit is contained in:
Axel Uhl committed 2011-12-09 13:00:15 +01:00
1 parent 2bd6d817c6
commit d970be5348
12 files changed
+32 -54

No files matched your search

@@ -1,22 +1,10 @@
package com.sap.sailing.domain.tracking;
import java.io.IOException;
import java.net.MalformedURLException;
import java.util.Set;
import com.sap.sailing.domain.base.RaceDefinition;
import com.sap.sailing.util.Util;
public abstract class AbstractRaceTrackerImpl implements RaceTracker {
private DynamicTrackedEvent trackedEvent;
/**
* Used during {@link #stop} to remove the {@link #trackedEvent} if it has no more tracked races
*/
private final TrackedEventRegistry trackedEventRegistry;
public AbstractRaceTrackerImpl(TrackedEventRegistry trackedEventRegistry) {
this.trackedEventRegistry = trackedEventRegistry;
public AbstractRaceTrackerImpl() {
}
@Override
@@ -27,21 +15,4 @@ public abstract class AbstractRaceTrackerImpl implements RaceTracker {
protected void setTrackedEvent(DynamicTrackedEvent trackedEvent) {
this.trackedEvent = trackedEvent;
}
@Override
public void stop() throws MalformedURLException, IOException, InterruptedException {
Set<RaceDefinition> races = getRaces();
if (races != null && !races.isEmpty()) {
for (RaceDefinition race : races) {
TrackedRace trackedRace = trackedEvent.getExistingTrackedRace(race);
if (trackedRace != null) {
trackedEvent.removeTrackedRace(trackedRace);
}
}
if (Util.isEmpty(trackedEvent.getTrackedRaces())) {
trackedEventRegistry.remove(trackedEvent.getEvent());
}
}
}
}
@@ -9,9 +9,7 @@ import com.sap.sailing.domain.base.RaceDefinition;
public interface RaceTracker {
/**
* Stops tracking the races and removes the {@link TrackedRace} object one gets from calling
* {@link #getTrackedEvent()}.{@link TrackedEvent#getTrackedRace(RaceDefinition) getTrackedRace(}{@link #getRaces() getRaces())}
* from the {@link #getTrackedEvent() tracked event}.
* Stops tracking the races.
*/
void stop() throws MalformedURLException, IOException, InterruptedException;
@@ -21,8 +21,8 @@ public interface TrackedEventRegistry {
* Looks for the tracking information for <code>event</code>. If not found, <code>null</code> is returned
* immediately. See also {@link #getOrCreateTrackedEvent(com.sap.sailing.domain.base.Event)}.
*/
DynamicTrackedEvent getTrackedEvent(com.sap.sailing.domain.base.Event event);
DynamicTrackedEvent getTrackedEvent(Event event);
void remove(Event event);
void removeTrackedEvent(Event event);
}