|
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