Removing method for listing matches in serie, instead all matches from league are filtered in code.
This commit is contained in:
@@ -52,39 +52,6 @@ public class DbLeagueMatchDAO implements LeagueMatchDAO {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Collection<LeagueMatch> getLeagueSerieMatches(League league, LeagueSerieData leagueSerie) {
|
|
||||||
try {
|
|
||||||
Connection conn = _dbAccess.getDataSource().getConnection();
|
|
||||||
try {
|
|
||||||
PreparedStatement statement = conn.prepareStatement("select winner, loser from league_match where league_type=? and season_type=?");
|
|
||||||
try {
|
|
||||||
statement.setString(1, league.getType());
|
|
||||||
statement.setString(2, leagueSerie.getName());
|
|
||||||
ResultSet rs = statement.executeQuery();
|
|
||||||
try {
|
|
||||||
Set<LeagueMatch> result = new HashSet<LeagueMatch>();
|
|
||||||
while (rs.next()) {
|
|
||||||
String winner = rs.getString(1);
|
|
||||||
String loser = rs.getString(2);
|
|
||||||
|
|
||||||
result.add(new LeagueMatch(leagueSerie.getName(), winner, loser));
|
|
||||||
}
|
|
||||||
return result;
|
|
||||||
} finally {
|
|
||||||
rs.close();
|
|
||||||
}
|
|
||||||
} finally {
|
|
||||||
statement.close();
|
|
||||||
}
|
|
||||||
} finally {
|
|
||||||
conn.close();
|
|
||||||
}
|
|
||||||
} catch (SQLException exp) {
|
|
||||||
throw new RuntimeException(exp);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addPlayedMatch(League league, LeagueSerieData leagueSeason, String winner, String loser) {
|
public void addPlayedMatch(League league, LeagueSerieData leagueSeason, String winner, String loser) {
|
||||||
try {
|
try {
|
||||||
|
|||||||
@@ -9,7 +9,5 @@ import java.util.Collection;
|
|||||||
public interface LeagueMatchDAO {
|
public interface LeagueMatchDAO {
|
||||||
public Collection<LeagueMatch> getLeagueMatches(League league);
|
public Collection<LeagueMatch> getLeagueMatches(League league);
|
||||||
|
|
||||||
public Collection<LeagueMatch> getLeagueSerieMatches(League league, LeagueSerieData leagueSerie);
|
|
||||||
|
|
||||||
public void addPlayedMatch(League league, LeagueSerieData leagueSeason, String winner, String loser);
|
public void addPlayedMatch(League league, LeagueSerieData leagueSeason, String winner, String loser);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,16 +3,16 @@ package com.gempukku.lotro.db.vo;
|
|||||||
public class LeagueMatch {
|
public class LeagueMatch {
|
||||||
private String _winner;
|
private String _winner;
|
||||||
private String _loser;
|
private String _loser;
|
||||||
private String _serie;
|
private String _serieName;
|
||||||
|
|
||||||
public LeagueMatch(String serie, String winner, String loser) {
|
public LeagueMatch(String serieName, String winner, String loser) {
|
||||||
_serie = serie;
|
_serieName = serieName;
|
||||||
_winner = winner;
|
_winner = winner;
|
||||||
_loser = loser;
|
_loser = loser;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getSerie() {
|
public String getSerieName() {
|
||||||
return _serie;
|
return _serieName;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getLoser() {
|
public String getLoser() {
|
||||||
|
|||||||
@@ -43,27 +43,6 @@ public class CachedLeagueMatchDAO implements LeagueMatchDAO {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public Collection<LeagueMatch> getLeagueSerieMatches(League league, LeagueSerieData leagueSerie) {
|
|
||||||
_readWriteLock.readLock().lock();
|
|
||||||
try {
|
|
||||||
Collection<LeagueMatch> leagueSerieMatches = _cachedMatches.get(LeagueMapKeys.getLeagueSerieMapKey(league, leagueSerie));
|
|
||||||
if (leagueSerieMatches == null) {
|
|
||||||
_readWriteLock.readLock().unlock();
|
|
||||||
_readWriteLock.writeLock().lock();
|
|
||||||
try {
|
|
||||||
leagueSerieMatches = getLeagueSerieMatchesInWriteLock(league, leagueSerie);
|
|
||||||
} finally {
|
|
||||||
_readWriteLock.readLock().lock();
|
|
||||||
_readWriteLock.writeLock().unlock();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Collections.unmodifiableCollection(leagueSerieMatches);
|
|
||||||
} finally {
|
|
||||||
_readWriteLock.readLock().unlock();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private Collection<LeagueMatch> getLeagueMatchesInWriteLock(League league) {
|
private Collection<LeagueMatch> getLeagueMatchesInWriteLock(League league) {
|
||||||
Collection<LeagueMatch> leagueMatches;
|
Collection<LeagueMatch> leagueMatches;
|
||||||
leagueMatches = _cachedMatches.get(LeagueMapKeys.getLeagueMapKey(league));
|
leagueMatches = _cachedMatches.get(LeagueMapKeys.getLeagueMapKey(league));
|
||||||
@@ -74,16 +53,6 @@ public class CachedLeagueMatchDAO implements LeagueMatchDAO {
|
|||||||
return leagueMatches;
|
return leagueMatches;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Collection<LeagueMatch> getLeagueSerieMatchesInWriteLock(League league, LeagueSerieData leagueSerie) {
|
|
||||||
Collection<LeagueMatch> leagueSerieMatches;
|
|
||||||
leagueSerieMatches = _cachedMatches.get(LeagueMapKeys.getLeagueSerieMapKey(league, leagueSerie));
|
|
||||||
if (leagueSerieMatches == null) {
|
|
||||||
leagueSerieMatches = new CopyOnWriteArraySet<LeagueMatch>(_leagueMatchDAO.getLeagueSerieMatches(league, leagueSerie));
|
|
||||||
_cachedMatches.put(LeagueMapKeys.getLeagueSerieMapKey(league, leagueSerie), leagueSerieMatches);
|
|
||||||
}
|
|
||||||
return leagueSerieMatches;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addPlayedMatch(League league, LeagueSerieData leagueSerie, String winner, String loser) {
|
public void addPlayedMatch(League league, LeagueSerieData leagueSerie, String winner, String loser) {
|
||||||
_readWriteLock.writeLock().lock();
|
_readWriteLock.writeLock().lock();
|
||||||
@@ -91,7 +60,6 @@ public class CachedLeagueMatchDAO implements LeagueMatchDAO {
|
|||||||
LeagueMatch match = new LeagueMatch(leagueSerie.getName(), winner, loser);
|
LeagueMatch match = new LeagueMatch(leagueSerie.getName(), winner, loser);
|
||||||
|
|
||||||
getLeagueMatchesInWriteLock(league).add(match);
|
getLeagueMatchesInWriteLock(league).add(match);
|
||||||
getLeagueSerieMatchesInWriteLock(league, leagueSerie).add(match);
|
|
||||||
_leagueMatchDAO.addPlayedMatch(league, leagueSerie, winner, loser);
|
_leagueMatchDAO.addPlayedMatch(league, leagueSerie, winner, loser);
|
||||||
} finally {
|
} finally {
|
||||||
_readWriteLock.writeLock().unlock();
|
_readWriteLock.writeLock().unlock();
|
||||||
|
|||||||
@@ -176,10 +176,10 @@ public class LeagueService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private Collection<LeagueMatch> getPlayerMatchesInSerie(League league, LeagueSerieData serie, String player) {
|
private Collection<LeagueMatch> getPlayerMatchesInSerie(League league, LeagueSerieData serie, String player) {
|
||||||
final Collection<LeagueMatch> allMatches = _leagueMatchDao.getLeagueSerieMatches(league, serie);
|
final Collection<LeagueMatch> allMatches = _leagueMatchDao.getLeagueMatches(league);
|
||||||
Set<LeagueMatch> result = new HashSet<LeagueMatch>();
|
Set<LeagueMatch> result = new HashSet<LeagueMatch>();
|
||||||
for (LeagueMatch match : allMatches) {
|
for (LeagueMatch match : allMatches) {
|
||||||
if (match.getWinner().equals(player) || match.getLoser().equals(player))
|
if (match.getSerieName().equals(serie.getName()) && (match.getWinner().equals(player) || match.getLoser().equals(player)))
|
||||||
result.add(match);
|
result.add(match);
|
||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
@@ -209,9 +209,15 @@ public class LeagueService {
|
|||||||
|
|
||||||
private List<PlayerStanding> createLeagueSerieStandings(League league, LeagueSerieData leagueSerie) {
|
private List<PlayerStanding> createLeagueSerieStandings(League league, LeagueSerieData leagueSerie) {
|
||||||
final Map<String, LeaguePointsDAO.Points> points = _leaguePointsDao.getLeagueSeriePoints(league, leagueSerie);
|
final Map<String, LeaguePointsDAO.Points> points = _leaguePointsDao.getLeagueSeriePoints(league, leagueSerie);
|
||||||
final Collection<LeagueMatch> matches = _leagueMatchDao.getLeagueSerieMatches(league, leagueSerie);
|
final Collection<LeagueMatch> matches = _leagueMatchDao.getLeagueMatches(league);
|
||||||
|
|
||||||
return createStandingsForMatchesAndPoints(points, matches);
|
Set<LeagueMatch> matchesInSerie = new HashSet<LeagueMatch>();
|
||||||
|
for (LeagueMatch match : matches) {
|
||||||
|
if (match.getSerieName().equals(leagueSerie.getName()))
|
||||||
|
matchesInSerie.add(match);
|
||||||
|
}
|
||||||
|
|
||||||
|
return createStandingsForMatchesAndPoints(points, matchesInSerie);
|
||||||
}
|
}
|
||||||
|
|
||||||
private List<PlayerStanding> createLeagueStandings(League league) {
|
private List<PlayerStanding> createLeagueStandings(League league) {
|
||||||
|
|||||||
@@ -43,7 +43,6 @@ public class LeagueServiceTest {
|
|||||||
Set<LeagueMatch> matches = new HashSet<LeagueMatch>();
|
Set<LeagueMatch> matches = new HashSet<LeagueMatch>();
|
||||||
|
|
||||||
Mockito.when(leagueMatchDAO.getLeagueMatches(league)).thenReturn(new HashSet<LeagueMatch>(matches));
|
Mockito.when(leagueMatchDAO.getLeagueMatches(league)).thenReturn(new HashSet<LeagueMatch>(matches));
|
||||||
Mockito.when(leagueMatchDAO.getLeagueSerieMatches(league, leagueSerie)).thenReturn(new HashSet<LeagueMatch>(matches));
|
|
||||||
|
|
||||||
LeagueParticipationDAO leagueParticipationDAO = Mockito.mock(LeagueParticipationDAO.class);
|
LeagueParticipationDAO leagueParticipationDAO = Mockito.mock(LeagueParticipationDAO.class);
|
||||||
CollectionsManager collectionsManager = Mockito.mock(CollectionsManager.class);
|
CollectionsManager collectionsManager = Mockito.mock(CollectionsManager.class);
|
||||||
@@ -60,7 +59,6 @@ public class LeagueServiceTest {
|
|||||||
assertTrue(leagueService.canPlayRankedGameAgainst(league, leagueSerie, "player1", "player3"));
|
assertTrue(leagueService.canPlayRankedGameAgainst(league, leagueSerie, "player1", "player3"));
|
||||||
|
|
||||||
Mockito.verify(leagueMatchDAO).getLeagueMatches(league);
|
Mockito.verify(leagueMatchDAO).getLeagueMatches(league);
|
||||||
Mockito.verify(leagueMatchDAO).getLeagueSerieMatches(league, leagueSerie);
|
|
||||||
|
|
||||||
Mockito.verify(leagueMatchDAO).addPlayedMatch(league, leagueSerie, "player1", "player2");
|
Mockito.verify(leagueMatchDAO).addPlayedMatch(league, leagueSerie, "player1", "player2");
|
||||||
Mockito.verifyNoMoreInteractions(leagueMatchDAO);
|
Mockito.verifyNoMoreInteractions(leagueMatchDAO);
|
||||||
@@ -100,7 +98,6 @@ public class LeagueServiceTest {
|
|||||||
matches.add(new LeagueMatch(leagueSerie.getName(), "player1", "player2"));
|
matches.add(new LeagueMatch(leagueSerie.getName(), "player1", "player2"));
|
||||||
|
|
||||||
Mockito.when(leagueMatchDAO.getLeagueMatches(league)).thenReturn(new HashSet<LeagueMatch>(matches));
|
Mockito.when(leagueMatchDAO.getLeagueMatches(league)).thenReturn(new HashSet<LeagueMatch>(matches));
|
||||||
Mockito.when(leagueMatchDAO.getLeagueSerieMatches(league, leagueSerie)).thenReturn(new HashSet<LeagueMatch>(matches));
|
|
||||||
|
|
||||||
LeagueParticipationDAO leagueParticipationDAO = Mockito.mock(LeagueParticipationDAO.class);
|
LeagueParticipationDAO leagueParticipationDAO = Mockito.mock(LeagueParticipationDAO.class);
|
||||||
CollectionsManager collectionsManager = Mockito.mock(CollectionsManager.class);
|
CollectionsManager collectionsManager = Mockito.mock(CollectionsManager.class);
|
||||||
@@ -114,7 +111,6 @@ public class LeagueServiceTest {
|
|||||||
leagueService.reportLeagueGameResult(league, leagueSerie, "player1", "player3");
|
leagueService.reportLeagueGameResult(league, leagueSerie, "player1", "player3");
|
||||||
|
|
||||||
Mockito.verify(leagueMatchDAO).getLeagueMatches(league);
|
Mockito.verify(leagueMatchDAO).getLeagueMatches(league);
|
||||||
Mockito.verify(leagueMatchDAO).getLeagueSerieMatches(league, leagueSerie);
|
|
||||||
|
|
||||||
Mockito.verify(leagueMatchDAO).addPlayedMatch(league, leagueSerie, "player1", "player3");
|
Mockito.verify(leagueMatchDAO).addPlayedMatch(league, leagueSerie, "player1", "player3");
|
||||||
Mockito.verifyNoMoreInteractions(leagueMatchDAO);
|
Mockito.verifyNoMoreInteractions(leagueMatchDAO);
|
||||||
@@ -148,7 +144,6 @@ public class LeagueServiceTest {
|
|||||||
Set<LeagueMatch> matches = new HashSet<LeagueMatch>();
|
Set<LeagueMatch> matches = new HashSet<LeagueMatch>();
|
||||||
|
|
||||||
Mockito.when(leagueMatchDAO.getLeagueMatches(league)).thenReturn(new HashSet<LeagueMatch>(matches));
|
Mockito.when(leagueMatchDAO.getLeagueMatches(league)).thenReturn(new HashSet<LeagueMatch>(matches));
|
||||||
Mockito.when(leagueMatchDAO.getLeagueSerieMatches(league, leagueSerie)).thenReturn(new HashSet<LeagueMatch>(matches));
|
|
||||||
|
|
||||||
LeagueParticipationDAO leagueParticipationDAO = Mockito.mock(LeagueParticipationDAO.class);
|
LeagueParticipationDAO leagueParticipationDAO = Mockito.mock(LeagueParticipationDAO.class);
|
||||||
CollectionsManager collectionsManager = Mockito.mock(CollectionsManager.class);
|
CollectionsManager collectionsManager = Mockito.mock(CollectionsManager.class);
|
||||||
|
|||||||
Reference in New Issue
Block a user