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

44 lines
1.2 KiB
Java
Raw Normal View History

2021-06-02 17:55:55 +00:00
package com.alttd.chat.managers;
2021-05-15 19:16:01 +00:00
import com.alttd.chat.database.Queries;
2021-06-02 17:55:55 +00:00
import com.alttd.chat.objects.ChatUser;
import com.alttd.chat.objects.Mail;
2021-05-15 19:16:01 +00:00
2021-06-13 11:53:49 +00:00
import java.util.ArrayList;
2021-05-15 22:28:47 +00:00
import java.util.List;
2021-05-15 19:16:01 +00:00
import java.util.UUID;
2021-05-15 19:17:24 +00:00
import java.util.concurrent.CopyOnWriteArrayList;
2021-05-15 22:28:47 +00:00
import java.util.stream.Collectors;
2021-05-15 19:16:01 +00:00
public final class ChatUserManager {
2021-06-13 11:53:49 +00:00
private static ArrayList<ChatUser> chatUsers;// not sure on this, could cause errors later on
2021-05-15 19:16:01 +00:00
public static void initialize() {
2021-06-13 11:53:49 +00:00
chatUsers = new ArrayList<>();
//Queries.loadChatUsers(); // todo fix sql
2021-05-15 19:16:01 +00:00
}
public static void addUser(ChatUser user) {
2021-06-13 11:53:49 +00:00
if(getChatUser(user.getUuid()) == null)
2021-05-15 19:16:01 +00:00
chatUsers.add(user);
}
public static ChatUser getChatUser(UUID uuid) {
for(ChatUser user : chatUsers) {
2021-06-13 11:53:49 +00:00
if(uuid.compareTo(user.getUuid()) == 0) {
2021-05-15 19:16:01 +00:00
return user;
}
}
2021-06-13 11:53:49 +00:00
ChatUser user = new ChatUser(uuid, -1, false, false);
chatUsers.add(user);
return user; // create a new user?
2021-05-15 19:16:01 +00:00
}
2021-05-15 22:28:47 +00:00
public List<Mail> getUnReadMail(ChatUser user) {
return user.getMails().stream()
.filter(Mail::isUnRead)
.collect(Collectors.toList());
}
2021-05-15 19:16:01 +00:00
}