Use constructor injection

This commit is contained in:
Charles Gould 2021-01-10 14:49:36 -05:00
parent 5a9b20dd0e
commit 2a21a8a0d0
2 changed files with 20 additions and 19 deletions

View File

@ -12,7 +12,6 @@ import javax.annotation.PostConstruct;
import dev.gould.lingo.api.Destinations;
import dev.gould.lingo.common.*;
import dev.gould.lingo.common.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@ -31,21 +30,21 @@ public class LingoController {
private static final Logger log = LoggerFactory.getLogger(LingoController.class);
@Autowired
private SimpMessagingTemplate messagingTemplate;
@Autowired
private SessionManager sessionManager;
@Autowired
private WordRepository wordRepo;
private final SimpMessagingTemplate messagingTemplate;
private final SessionManager sessionManager;
private final WordRepository wordRepo;
private final Map<Integer, Game> gameById = new TreeMap<>();
private final Map<Player, Game> gameByPlayer = new HashMap<>();
private final Set<String> usernames = new HashSet<>();
@Autowired
public LingoController(SimpMessagingTemplate messagingTemplate, SessionManager sessionManager, WordRepository wordRepo) {
this.messagingTemplate = messagingTemplate;
this.sessionManager = sessionManager;
this.wordRepo = wordRepo;
}
@MessageMapping("/chat")
public ChatMessage chat(String message, @Header(SESSION_ID_HEADER) String sessionId) {
final Player player = sessionManager.getPlayer(sessionId);

View File

@ -26,17 +26,19 @@ public class PracticeController {
private static final Logger log = LoggerFactory.getLogger(PracticeController.class);
@Autowired
private SimpMessagingTemplate messagingTemplate;
@Autowired
private SessionManager sessionManager;
@Autowired
private WordRepository wordRepo;
private final SimpMessagingTemplate messagingTemplate;
private final SessionManager sessionManager;
private final WordRepository wordRepo;
private final Map<Player, Game> practiceByPlayer = new HashMap<>();
@Autowired
public PracticeController(SimpMessagingTemplate messagingTemplate, SessionManager sessionManager, WordRepository wordRepo) {
this.messagingTemplate = messagingTemplate;
this.sessionManager = sessionManager;
this.wordRepo = wordRepo;
}
@MessageMapping("/practiceGame")
public void practiceGame(@Header(SESSION_ID_HEADER) String sessionId) {
final Player player = sessionManager.getPlayer(sessionId);