1 | package sh.okx.rankup.ranks.requirements; | |
2 | ||
3 | import java.util.Map; | |
4 | import java.util.Objects; | |
5 | import org.bukkit.entity.Player; | |
6 | import sh.okx.rankup.RankupPlugin; | |
7 | import sh.okx.rankup.prestige.Prestige; | |
8 | import sh.okx.rankup.prestige.Prestiges; | |
9 | import sh.okx.rankup.requirements.Requirement; | |
10 | ||
11 | public class PrestigeListRankRequirements implements RankRequirements { | |
12 | private final RankupPlugin plugin; | |
13 | private final RankRequirements defaultRequirements; | |
14 | private final Map<String, RankRequirements> requirements; | |
15 | ||
16 | public PrestigeListRankRequirements(RankupPlugin plugin, RankRequirements defaultRequirements, Map<String, RankRequirements> requirements) { | |
17 | Objects.requireNonNull(plugin); | |
18 | Objects.requireNonNull(defaultRequirements); | |
19 | ||
20 | this.plugin = plugin; | |
21 | this.defaultRequirements = defaultRequirements; | |
22 | this.requirements = requirements; | |
23 | } | |
24 | ||
25 | @Override | |
26 | public Iterable<Requirement> getRequirements(Player player) { | |
27 |
1
1. getRequirements : replaced return value with null for sh/okx/rankup/ranks/requirements/PrestigeListRankRequirements::getRequirements → NO_COVERAGE |
return getRankRequirements(player).getRequirements(player); |
28 | } | |
29 | ||
30 | @Override | |
31 | public boolean hasRequirements(Player player) { | |
32 |
2
1. hasRequirements : replaced boolean return with true for sh/okx/rankup/ranks/requirements/PrestigeListRankRequirements::hasRequirements → SURVIVED 2. hasRequirements : replaced boolean return with false for sh/okx/rankup/ranks/requirements/PrestigeListRankRequirements::hasRequirements → KILLED |
return getRankRequirements(player).hasRequirements(player); |
33 | } | |
34 | ||
35 | @Override | |
36 | public Requirement getRequirement(Player player, String name) { | |
37 |
1
1. getRequirement : replaced return value with null for sh/okx/rankup/ranks/requirements/PrestigeListRankRequirements::getRequirement → NO_COVERAGE |
return getRankRequirements(player).getRequirement(player, name); |
38 | } | |
39 | ||
40 | @Override | |
41 | public void applyRequirements(Player player) { | |
42 |
1
1. applyRequirements : removed call to sh/okx/rankup/ranks/requirements/RankRequirements::applyRequirements → KILLED |
getRankRequirements(player).applyRequirements(player); |
43 | } | |
44 | ||
45 | private RankRequirements getRankRequirements(Player player) { | |
46 | Prestiges prestiges = plugin.getPrestiges(); | |
47 |
2
1. getRankRequirements : negated conditional → KILLED 2. getRankRequirements : negated conditional → KILLED |
if (player == null || prestiges == null) { |
48 |
1
1. getRankRequirements : replaced return value with null for sh/okx/rankup/ranks/requirements/PrestigeListRankRequirements::getRankRequirements → NO_COVERAGE |
return defaultRequirements; |
49 | } | |
50 | ||
51 | for (Prestige prestige : prestiges.getTree()) { | |
52 | String next = prestige.getNext(); | |
53 |
2
1. getRankRequirements : negated conditional → KILLED 2. getRankRequirements : negated conditional → KILLED |
if(next != null && plugin.getPermissions().inGroup(player.getUniqueId(), next)) { |
54 | RankRequirements rankRequirements = this.requirements.get(next.toLowerCase()); | |
55 |
1
1. getRankRequirements : negated conditional → KILLED |
if (rankRequirements != null) { |
56 |
1
1. getRankRequirements : replaced return value with null for sh/okx/rankup/ranks/requirements/PrestigeListRankRequirements::getRankRequirements → KILLED |
return rankRequirements; |
57 | } | |
58 | } | |
59 | } | |
60 |
1
1. getRankRequirements : replaced return value with null for sh/okx/rankup/ranks/requirements/PrestigeListRankRequirements::getRankRequirements → NO_COVERAGE |
return defaultRequirements; |
61 | } | |
62 | } | |
Mutations | ||
27 |
1.1 |
|
32 |
1.1 2.2 |
|
37 |
1.1 |
|
42 |
1.1 |
|
47 |
1.1 2.2 |
|
48 |
1.1 |
|
53 |
1.1 2.2 |
|
55 |
1.1 |
|
56 |
1.1 |
|
60 |
1.1 |