2023-05-14 03:08:26 +00:00
|
|
|
package me.totalfreedom.data;
|
|
|
|
|
2023-05-19 04:15:17 +00:00
|
|
|
import me.totalfreedom.security.perm.Group;
|
2023-05-14 03:08:26 +00:00
|
|
|
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
|
|
|
|
|
|
|
|
import java.util.ArrayList;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
public class GroupRegistry
|
|
|
|
{
|
|
|
|
private final List<Group> groups;
|
|
|
|
|
|
|
|
public GroupRegistry()
|
|
|
|
{
|
|
|
|
this.groups = new ArrayList<>();
|
|
|
|
}
|
|
|
|
|
2023-05-22 02:47:10 +00:00
|
|
|
public boolean registerGroup(final Group group) {
|
2023-05-14 03:08:26 +00:00
|
|
|
return groups.add(group);
|
|
|
|
}
|
|
|
|
|
2023-05-22 02:47:10 +00:00
|
|
|
public boolean unregisterGroup(final Group group) {
|
2023-05-14 03:08:26 +00:00
|
|
|
return groups.remove(group);
|
|
|
|
}
|
|
|
|
|
2023-05-22 02:47:10 +00:00
|
|
|
public Group getGroup(final String name) {
|
|
|
|
final PlainTextComponentSerializer s = PlainTextComponentSerializer.plainText();
|
|
|
|
for (final Group group : groups) {
|
|
|
|
final String n = s.serialize(group.getName());
|
2023-05-14 03:08:26 +00:00
|
|
|
if (n.equalsIgnoreCase(name)) {
|
|
|
|
return group;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
public List<Group> getGroups() {
|
|
|
|
return groups;
|
|
|
|
}
|
|
|
|
}
|