Merge branch 'f/javafx' into f/settings

This commit is contained in:
delvh 2020-04-19 22:24:37 +02:00 committed by GitHub
commit 37dd1dc02c
5 changed files with 12 additions and 16 deletions

View File

@ -6,10 +6,9 @@ import java.net.Socket;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.TimeoutException;
import java.util.logging.Logger;
import javax.naming.TimeLimitExceededException;
import envoy.client.data.Cache;
import envoy.client.data.ClientConfig;
import envoy.client.data.LocalDB;
@ -61,14 +60,14 @@ public class Client implements Closeable {
* @param receivedMessageCache a message cache containing all unread messages
* from the server that can be relayed after
* initialization
* @throws TimeLimitExceededException if the server could not be reached
* @throws TimeoutException if the server could not be reached
* @throws IOException if the login credentials could not be
* written
* @throws InterruptedException if the current thread is interrupted while
* waiting for the handshake response
*/
public void performHandshake(LoginCredentials credentials, Cache<Message> receivedMessageCache)
throws TimeLimitExceededException, IOException, InterruptedException {
throws TimeoutException, IOException, InterruptedException {
if (online) throw new IllegalStateException("Handshake has already been performed successfully");
// Establish TCP connection
logger.finer(String.format("Attempting connection to server %s:%d...", config.getServer(), config.getPort()));
@ -103,7 +102,7 @@ public class Client implements Closeable {
return;
}
if (System.currentTimeMillis() - start > 5000) throw new TimeLimitExceededException("Did not log in after 5 seconds");
if (System.currentTimeMillis() - start > 5000) throw new TimeoutException("Did not log in after 5 seconds");
Thread.sleep(500);
}
@ -232,7 +231,7 @@ public class Client implements Closeable {
private void writeObject(Object obj) throws IOException {
checkOnline();
logger.fine("Sending object " + obj);
logger.fine("Sending " + obj);
SerializationUtils.writeBytesWithLength(obj, socket.getOutputStream());
}

View File

@ -54,7 +54,7 @@ public class Receiver extends Thread {
try (ObjectInputStream oin = new ObjectInputStream(new ByteArrayInputStream(objBytes))) {
Object obj = oin.readObject();
logger.fine("Received object " + obj);
logger.fine("Received " + obj);
// Get appropriate processor
@SuppressWarnings("rawtypes")

View File

@ -79,7 +79,6 @@ public final class ChatSceneController {
eventBus.register(MessageCreationEvent.class, e -> {
final var message = e.get();
final var chat = localDB.getChats().stream().filter(c -> c.getRecipient().getID() == message.getSenderID()).findAny().get();
chat.getMessages().add(message);
// Update UI if in current chat
if (chat == currentChat) Platform.runLater(() -> messageList.getItems().add(message));

View File

@ -1,10 +1,9 @@
package envoy.client.ui;
import java.io.IOException;
import java.util.concurrent.TimeoutException;
import java.util.logging.Logger;
import javax.naming.TimeLimitExceededException;
import javafx.application.Platform;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
@ -135,7 +134,7 @@ public final class LoginDialog extends Dialog<Void> {
client.initReceiver(localDB, receivedMessageCache);
Platform.runLater(this::hide);
}
} catch (IOException | InterruptedException | TimeLimitExceededException e) {
} catch (IOException | InterruptedException | TimeoutException e) {
logger.warning("Could not connect to server. Trying offline mode...");
e.printStackTrace();
try {

View File

@ -12,7 +12,6 @@ module envoy {
requires transitive envoy.common;
requires transitive java.desktop;
requires transitive java.logging;
requires transitive java.naming;
requires transitive java.prefs;
requires javafx.controls;
requires javafx.fxml;