|
1 | 1 | package scorekeep;
|
2 | 2 |
|
3 |
| -import java.math.BigInteger; |
4 |
| -import java.security.SecureRandom; |
5 | 3 | import java.util.HashMap;
|
6 | 4 | import java.util.List;
|
7 | 5 | import java.util.Set;
|
|
12 | 10 | import org.slf4j.LoggerFactory;
|
13 | 11 |
|
14 | 12 | public class MoveFactory {
|
15 |
| - private static final Logger logger = LoggerFactory.getLogger("scorekeep.MoveFactory"); |
16 |
| - private SecureRandom random = new SecureRandom(); |
| 13 | + private static final Logger logger = LoggerFactory.getLogger(MoveFactory.class); |
17 | 14 | private final HashMap<String, Move> allMoves = new HashMap<String, Move>(1);
|
18 |
| - private MoveModel moveModel = new MoveModel(); |
19 |
| - private StateModel stateModel = new StateModel(); |
20 |
| - private GameController gameController = new GameController(); |
21 |
| - private StateController stateController = new StateController(); |
22 |
| - private RulesFactory rulesFactory = new RulesFactory(); |
| 15 | + private final MoveModel moveModel = new MoveModel(); |
| 16 | + private final StateModel stateModel = new StateModel(); |
| 17 | + private final GameController gameController = new GameController(); |
| 18 | + private final StateController stateController = new StateController(); |
| 19 | + private final RulesFactory rulesFactory = new RulesFactory(); |
23 | 20 |
|
24 | 21 | public MoveFactory(){
|
25 | 22 | }
|
26 | 23 |
|
27 | 24 | public Move newMove(String sessionId, String gameId, String userId, String moveText) throws SessionNotFoundException, GameNotFoundException, StateNotFoundException, RulesException {
|
28 |
| - String moveId = new BigInteger(40, random).toString(32).toUpperCase(); |
29 |
| - String stateId = new BigInteger(40, random).toString(32).toUpperCase(); |
30 |
| - Move move = new Move(moveId, sessionId, gameId, userId, moveText); |
| 25 | + String moveId = Identifiers.random(); |
| 26 | + String stateId = Identifiers.random(); |
| 27 | + Move move = new Move().setId(moveId) |
| 28 | + .setSession(sessionId) |
| 29 | + .setGame(gameId) |
| 30 | + .setUser(userId) |
| 31 | + .setMove(moveText); |
31 | 32 | String newStateText = "";
|
32 | 33 | // load game state
|
33 | 34 | Game game = gameController.getGame(sessionId, gameId);
|
@@ -57,7 +58,7 @@ public Move newMove(String sessionId, String gameId, String userId, String moveT
|
57 | 58 | State newState = new State(stateId, sessionId, gameId, newStateText, newTurn);
|
58 | 59 | // send notification on game end
|
59 | 60 | if ( newStateText.startsWith("A") || newStateText.startsWith("B")) {
|
60 |
| - Utils.sendNotification("Scorekeep game completed", "Winner: " + userId); |
| 61 | + Sns.sendNotification("Scorekeep game completed", "Winner: " + userId); |
61 | 62 | }
|
62 | 63 | // register state and move id to game
|
63 | 64 | gameController.setGameMove(sessionId, gameId, moveId);
|
|
0 commit comments