diff --git a/src/main/java/nl/connectedit/swiss/mapper/TournamentMapper.java b/src/main/java/nl/connectedit/swiss/mapper/TournamentMapper.java index 9e34731..2fb50a2 100644 --- a/src/main/java/nl/connectedit/swiss/mapper/TournamentMapper.java +++ b/src/main/java/nl/connectedit/swiss/mapper/TournamentMapper.java @@ -94,13 +94,15 @@ public class TournamentMapper implements DtoMapper, E var playersCounting = new ArrayList(); for (var event : tournament.getEvents()) { - for (var group : event.getGroups()) { - for (var round : group.getRounds()) { - for (var match : round.getMatches()) { - if (match.getStatus() == Status.IN_PROGRESS && match.getCounter() != null) { - var counter = getTournamentPlayerFromPlayerId(tournament, match.getCounter().getId()); - if (counter != null) { - playersCounting.add(counter.getId()); + if (event.getGroups() != null) { + for (var group : event.getGroups()) { + for (var round : group.getRounds()) { + for (var match : round.getMatches()) { + if (match.getStatus() == Status.IN_PROGRESS && match.getCounter() != null) { + var counter = getTournamentPlayerFromPlayerId(tournament, match.getCounter().getId()); + if (counter != null) { + playersCounting.add(counter.getId()); + } } } } @@ -114,11 +116,13 @@ public class TournamentMapper implements DtoMapper, E var playersPlaying = new ArrayList(); for (var event : tournament.getEvents()) { - for (var group : event.getGroups()) { - for (var round : group.getRounds()) { - for (var match : round.getMatches()) { - if (match.getStatus() == Status.IN_PROGRESS) { - playersPlaying.addAll(getPlayersInMatch(tournament, match)); + if (event.getGroups() != null) { + for (var group : event.getGroups()) { + for (var round : group.getRounds()) { + for (var match : round.getMatches()) { + if (match.getStatus() == Status.IN_PROGRESS) { + playersPlaying.addAll(getPlayersInMatch(tournament, match)); + } } } } @@ -129,6 +133,10 @@ public class TournamentMapper implements DtoMapper, E } private List getPlayersAvailable(Tournament tournament) { + if (tournament.getTournamentPlayers() == null) { + return List.of(); + } + var playersAvailable = tournament.getTournamentPlayers() .stream() .map(TournamentPlayer::getId)