Renamed ChatSynchronizer to LocalDB, added user-specific files

This commit is contained in:
2019-10-27 21:40:40 +01:00
parent d2dbf91b8a
commit 07dc11eebd
6 changed files with 74 additions and 35 deletions

View File

@ -24,8 +24,8 @@ import javax.swing.Timer;
import javax.swing.border.EmptyBorder;
import envoy.client.Chat;
import envoy.client.ChatSynchronizer;
import envoy.client.Client;
import envoy.client.LocalDB;
import envoy.schema.Message;
import envoy.schema.Messages;
import envoy.schema.User;
@ -48,14 +48,14 @@ public class ChatWindow extends JFrame {
private JPanel contentPane = new JPanel();
private Client client;
private ChatSynchronizer chatSynchronizer;
private LocalDB localDB;
private JList<User> userList = new JList<>();
private Chat currentChat;
public ChatWindow(Client client, ChatSynchronizer chatSynchronizer) {
public ChatWindow(Client client, LocalDB localDB) {
this.client = client;
this.chatSynchronizer = chatSynchronizer;
this.localDB = localDB;
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 600, 800);
@ -67,7 +67,7 @@ public class ChatWindow extends JFrame {
@Override
public void windowClosing(WindowEvent e) {
chatSynchronizer.saveToLocalDB();
localDB.saveToLocalDB();
}
});
@ -204,7 +204,7 @@ public class ChatWindow extends JFrame {
final User user = selectedUserList.getSelectedValue();
client.setRecipient(user);
currentChat = chatSynchronizer.getChats()
currentChat = localDB.getChats()
.stream()
.filter(chat -> chat.getRecipient().getID() == user.getID())
.findFirst()
@ -253,10 +253,10 @@ public class ChatWindow extends JFrame {
userListModel.addElement(user);
// Check if user exists in local DB
if (chatSynchronizer.getChats()
if (localDB.getChats()
.stream()
.filter(c -> c.getRecipient().getID() == user.getID())
.count() == 0) chatSynchronizer.getChats().add(new Chat(user));
.count() == 0) localDB.getChats().add(new Chat(user));
});
SwingUtilities.invokeLater(() -> userList.setModel(userListModel));
}).start();
@ -272,11 +272,11 @@ public class ChatWindow extends JFrame {
new Timer(timeout, (evt) -> {
Messages unreadMessages = client.getUnreadMessages(client.getSender().getID());
for (int i = 0; i < unreadMessages.getMessage().size(); i++)
for (int j = 0; j < chatSynchronizer.getChats().size(); j++)
if (chatSynchronizer.getChats().get(j)
for (int j = 0; j < localDB.getChats().size(); j++)
if (localDB.getChats().get(j)
.getRecipient()
.getID() == unreadMessages.getMessage().get(i).getMetaData().getSender())
chatSynchronizer.getChats().get(j).appendMessage(unreadMessages.getMessage().get(i));
localDB.getChats().get(j).appendMessage(unreadMessages.getMessage().get(i));
}).start();
}
}