From af293f2f9056a4cabc6c7641b86e7c97ef201f09 Mon Sep 17 00:00:00 2001 From: Axel Uhl Date: Thu, 14 Jul 2016 16:01:53 +0200 Subject: [PATCH] trigger listeners on RaceCompetitorSet properly Change-Id: I1321e386344d13601220a1e318cf8233a026434c --- .../ui/client/shared/racemap/RaceCompetitorSet.java | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RaceCompetitorSet.java b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RaceCompetitorSet.java index ec1fee88912..87c3c1227bb 100644 --- a/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RaceCompetitorSet.java +++ b/java/com.sap.sailing.gwt.ui/src/main/java/com/sap/sailing/gwt/ui/client/shared/racemap/RaceCompetitorSet.java @@ -44,7 +44,7 @@ public class RaceCompetitorSet extends RaceCompetitorIdsAsStringWithMD5Hash { */ private Iterable competitorsParticipatingInRace; - private Set competitorsForRaceDefinedListeners; + private Set competitorsForRaceDefinedListeners; /** * Such listeners are notified whenever the response to {@link #getCompetitorsParticipatingInRace()} changes. @@ -86,6 +86,7 @@ public class RaceCompetitorSet extends RaceCompetitorIdsAsStringWithMD5Hash { @Override public void competitorsListChanged(final Iterable competitors) { competitorsParticipatingInRace = computeCompetitorsFromIDs(competitors); + notifyListeners(); } @Override @@ -107,8 +108,15 @@ public class RaceCompetitorSet extends RaceCompetitorIdsAsStringWithMD5Hash { public void setIdsAsStringsOfCompetitorsInRace(Set idsAsStringsOfCompetitorsInRace) throws UnsupportedEncodingException, NoSuchAlgorithmException { super.setIdsAsStringsOfCompetitorsInRace(idsAsStringsOfCompetitorsInRace); competitorsParticipatingInRace = computeCompetitorsFromIDs(competitorSelection.getAllCompetitors()); + notifyListeners(); } + private void notifyListeners() { + for (final CompetitorsForRaceDefinedListener listener : competitorsForRaceDefinedListeners) { + listener.competitorsForRaceDefined(competitorsParticipatingInRace); + } + } + public Iterable getCompetitorsParticipatingInRace() { return competitorsParticipatingInRace; }