diff options
Diffstat (limited to 'src/main/java/design/model/League.java')
| -rw-r--r-- | src/main/java/design/model/League.java | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main/java/design/model/League.java b/src/main/java/design/model/League.java index 8793c86..b76cc33 100644 --- a/src/main/java/design/model/League.java +++ b/src/main/java/design/model/League.java @@ -7,6 +7,7 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; @JsonTypeInfo( use = JsonTypeInfo.Id.NAME, @@ -25,6 +26,7 @@ public abstract class League { private final Date endDate; private final Golfer owner; private final List<Match> schedule; + private final List<Match> completedMatches; private boolean completed; @JsonCreator @@ -37,6 +39,13 @@ public abstract class League { this.owner = owner; this.schedule = schedule != null ? schedule : new ArrayList<>(); this.completed = false; + + this.completedMatches = new ArrayList<>(); + for(Match m : this.schedule){ + if(m.checkCompletion()){ + completedMatches.add(m); + } + } } public League(String name, Date registrationDate, Date startDate, Date endDate, Golfer owner) { @@ -48,6 +57,8 @@ public abstract class League { this.owner = owner; this.schedule = new ArrayList<>(); this.completed = false; + + this.completedMatches = new ArrayList<>(); } public int getId() { @@ -82,6 +93,10 @@ public abstract class League { return completed; } + public List<Match> getCompletedMatches() { + return completedMatches; + } + public void addMatchToSchedule(Match match) { if(match.getDateScheduled().after(endDate)){ throw new IllegalArgumentException("Cannot create match after league has ended"); @@ -112,4 +127,6 @@ public abstract class League { public abstract void recordPlay(Golfer player, Match match, Round round); public abstract void finalizeLeague(); + + public abstract Map<?, Integer> getResults(); } |
