From 3d30d3cca6fa7def8f27d1dcccc878cda294e306 Mon Sep 17 00:00:00 2001 From: "marcins78@gmail.com" Date: Thu, 26 Apr 2012 21:54:17 +0000 Subject: [PATCH] Fixing caching problem. --- .../gempukku/lotro/league/LeagueService.java | 30 ++++++++++--------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/LeagueService.java b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/LeagueService.java index b78555161..965b8d312 100644 --- a/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/LeagueService.java +++ b/gemp-lotr/gemp-lotr-server/src/main/java/com/gempukku/lotro/league/LeagueService.java @@ -246,39 +246,41 @@ public class LeagueService { awardPrizesToPlayer(league, serie, loser, false); } - private void addPoints(League league, LeagueSerieData serie, String winner, int points) { - _leaguePointsDao.addPoints(league, serie, winner, points); - storeNewLeaguePoints(league, winner, points); - storeNewLeagueSeriePoints(league, serie, winner, points); + private void addPoints(League league, LeagueSerieData serie, String player, int points) { + Map leaguePoints = getLeaguePoints(league); + Map leagueSeriePoints = getLeagueSeriePoints(league, serie); + _leaguePointsDao.addPoints(league, serie, player, points); + storeNewLeaguePoints(leaguePoints, player, points); + storeNewLeagueSeriePoints(leagueSeriePoints, player, points); } - private void storeNewLeagueSeriePoints(League league, LeagueSerieData serie, String winner, int points) { - final Map leagueSeriePoints = getLeagueSeriePoints(league, serie); - final LeaguePointsDAO.Points playerPoints = leagueSeriePoints.get(winner); + private void storeNewLeagueSeriePoints(Map leagueSeriePoints, String player, int points) { + final LeaguePointsDAO.Points playerPoints = leagueSeriePoints.get(player); if (playerPoints != null) playerPoints.addPointsForMatch(points); else { LeaguePointsDAO.Points newPoints = new LeaguePointsDAO.Points(points, 1); - leagueSeriePoints.put(winner, newPoints); + leagueSeriePoints.put(player, newPoints); } } - private void storeNewLeaguePoints(League league, String winner, int points) { - final Map leaguePoints = getLeaguePoints(league); - final LeaguePointsDAO.Points playerPoints = leaguePoints.get(winner); + private void storeNewLeaguePoints(Map leaguePoints, String player, int points) { + final LeaguePointsDAO.Points playerPoints = leaguePoints.get(player); if (playerPoints != null) playerPoints.addPointsForMatch(points); else { LeaguePointsDAO.Points newPoints = new LeaguePointsDAO.Points(points, 1); - leaguePoints.put(winner, newPoints); + leaguePoints.put(player, newPoints); } } private void addMatch(League league, LeagueSerieData serie, String winner, String loser) { + Collection leagueMatches = getLeagueMatches(league); + Collection leagueSerieMatches = getLeagueSerieMatches(league, serie); LeagueMatch match = new LeagueMatch(winner, loser); _leagueMatchDao.addPlayedMatch(league, serie, match); - getLeagueMatches(league).add(match); - getLeagueSerieMatches(league, serie).add(match); + leagueMatches.add(match); + leagueSerieMatches.add(match); } private void awardPrizesToPlayer(League league, LeagueSerieData serie, String player, boolean winner) {