de.pewpewproject.lasertag.lasertaggame.state.management.client.implementation.TeamsManager   A
last analyzed

Complexity

Total Complexity 7

Size/Duplication

Total Lines 36
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 22
dl 0
loc 36
rs 10
c 0
b 0
f 0
wmc 7

6 Methods

Rating   Name   Duplication   Size   Complexity  
A getTeamOfPlayer(UUID) 0 3 1
A removePlayerFromTeam(UUID) 0 3 1
A updateTeamOfPlayer(UUID,TeamDto) 0 7 2
A setClientManager(IClientLasertagManager) 0 2 1
A getPlayersOfTeam(TeamDto) 0 3 1
A isPlayerInTeam(UUID) 0 3 1
1
package de.pewpewproject.lasertag.lasertaggame.state.management.client.implementation;
2
3
import de.pewpewproject.lasertag.lasertaggame.state.management.client.IClientLasertagManager;
4
import de.pewpewproject.lasertag.lasertaggame.state.management.client.ITeamsManager;
5
import de.pewpewproject.lasertag.lasertaggame.team.TeamDto;
6
7
import java.util.List;
8
import java.util.Optional;
9
import java.util.UUID;
10
11
/**
12
 * Implementation of ITeamsManager for the lasertag game
13
 *
14
 * @author Étienne Muser
15
 */
16
public class TeamsManager implements ITeamsManager {
17
18
    private IClientLasertagManager clientManager;
19
20
    public void setClientManager(IClientLasertagManager clientManager) {
21
        this.clientManager = clientManager;
22
    }
23
24
    @Override
25
    public List<UUID> getPlayersOfTeam(TeamDto team) {
26
        return clientManager.getSyncedState().getTeamsState().getPlayersOfTeam(team);
27
    }
28
29
    @Override
30
    public void updateTeamOfPlayer(UUID playerUuid, TeamDto newTeam) {
31
32
        if (newTeam == null) {
33
            clientManager.getSyncedState().getTeamsState().removePlayerFromTeam(playerUuid);
34
        } else {
35
            clientManager.getSyncedState().getTeamsState().updateTeamOfPlayer(playerUuid, newTeam);
36
        }
37
    }
38
39
    @Override
40
    public void removePlayerFromTeam(UUID playerUuid) {
41
        clientManager.getSyncedState().getTeamsState().removePlayerFromTeam(playerUuid);
42
    }
43
44
    @Override
45
    public boolean isPlayerInTeam(UUID playerUuid) {
46
        return clientManager.getSyncedState().getTeamsState().isPlayerInTeam(playerUuid);
47
    }
48
49
    @Override
50
    public Optional<Integer> getTeamOfPlayer(UUID playerUuid) {
51
        return clientManager.getSyncedState().getTeamsState().getTeamOfPlayer(playerUuid);
52
    }
53
}
54