Chat/api/src/main/java/com/alttd/chat/managers/ChatUserManager.java

45 lines
1.1 KiB
Java
Executable File

package com.alttd.chat.managers;
import com.alttd.chat.database.Queries;
import com.alttd.chat.objects.ChatUser;
import com.alttd.chat.objects.Mail;
import java.util.*;
import java.util.stream.Collectors;
public final class ChatUserManager {
private static ArrayList<ChatUser> chatUsers;
public static void initialize() {
chatUsers = new ArrayList<>();
}
public static void addUser(ChatUser user) {
chatUsers.add(user);
}
public static void removeUser(ChatUser user) {
chatUsers.remove(user);
}
public static ChatUser getChatUser(UUID uuid) {
for(ChatUser user : chatUsers) {
if(uuid.equals(user.getUuid())) {
return user;
}
}
return Queries.loadChatUser(uuid);
}
public List<Mail> getUnReadMail(ChatUser user) {
return user.getMails().stream()
.filter(Mail::isUnRead)
.collect(Collectors.toList());
}
protected static List<ChatUser> getChatUsers() {
return Collections.unmodifiableList(chatUsers);
}
}