Skip to content

Commit 3cdad39

Browse files
committed
remove game from session on game delete
1 parent 117461a commit 3cdad39

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

src/main/java/scorekeep/GameController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,8 @@ public Game updateGame(@PathVariable String sessionId, @PathVariable String game
5858
}
5959
/* DELETE /game/SESSION/GAME */
6060
@RequestMapping(value="/{gameId}",method=RequestMethod.DELETE)
61-
public void deleteGame(@PathVariable String gameId) throws GameNotFoundException {
62-
model.deleteGame(gameId);
61+
public void deleteGame(@PathVariable String sessionId, @PathVariable String gameId) throws GameNotFoundException {
62+
model.deleteGame(sessionId, gameId);
6363
}
6464
/* GET /game/SESSION/GAME/name */
6565
@RequestMapping(value="/{gameId}/name", method=RequestMethod.GET)

src/main/java/scorekeep/GameModel.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
import java.util.HashMap;
77
import java.util.List;
88
import java.util.Set;
9+
import java.util.HashSet;
910

1011
import com.amazonaws.auth.AWSCredentials;
1112
import com.amazonaws.auth.profile.ProfileCredentialsProvider;
@@ -74,11 +75,17 @@ public List<Game> loadGames(String sessionId) throws SessionNotFoundException {
7475
return sessionGames;
7576
}
7677

77-
public void deleteGame(String gameId) throws GameNotFoundException {
78+
public void deleteGame(String sessionId, String gameId) throws GameNotFoundException {
7879
Game game = mapper.load(Game.class, gameId);
7980
if ( game == null ) {
8081
throw new GameNotFoundException(gameId);
8182
}
8283
mapper.delete(game);
84+
//delete game from session
85+
Session session = mapper.load(Session.class, sessionId);
86+
Set<String> sessionGames = session.getGames();
87+
sessionGames.remove(gameId);
88+
session.setGames(sessionGames);
89+
mapper.save(session);
8390
}
8491
}

0 commit comments

Comments
 (0)