From 1d9faa93f8cbe4fe4d589c324695619ff79d4ee1 Mon Sep 17 00:00:00 2001 From: GustavoHMDS Date: Wed, 7 Oct 2026 22:29:20 -0300 Subject: [PATCH] Bugs corrigidos --- pitiupi.mpChat/src/GUI/PrivateChatWindow.java | 1 + pitiupi.mpChat/src/GUI/PublicChatWindow.java | 2 ++ pitiupi.mpChat/src/plugin/MultiProtocolChat.java | 6 ++++++ pitiupi/src/pitiupi/control/plugins/PluginManager.java | 6 +++--- pitiupi/src/pitiupi/net/tcp/SocketTCP.java | 5 ----- pitiupi/src/pitiupi/net/tcp/TcpConnection.java | 8 ++------ 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/pitiupi.mpChat/src/GUI/PrivateChatWindow.java b/pitiupi.mpChat/src/GUI/PrivateChatWindow.java index c07f342..ff4e3d3 100644 --- a/pitiupi.mpChat/src/GUI/PrivateChatWindow.java +++ b/pitiupi.mpChat/src/GUI/PrivateChatWindow.java @@ -91,6 +91,7 @@ public class PrivateChatWindow extends JFrame { ); connection.send(message.toByteArray()); + receiveMessage(message); messageField.setText(""); diff --git a/pitiupi.mpChat/src/GUI/PublicChatWindow.java b/pitiupi.mpChat/src/GUI/PublicChatWindow.java index 3599eb8..67cbafa 100644 --- a/pitiupi.mpChat/src/GUI/PublicChatWindow.java +++ b/pitiupi.mpChat/src/GUI/PublicChatWindow.java @@ -178,6 +178,7 @@ public class PublicChatWindow extends JFrame { InetAddress ip = InetAddress.getByName(ipField.getText()); pitiupi.sendTcp(msg, ip); + receiveMessage(msg); } catch (Exception ex) { Logger.getLogger( @@ -193,6 +194,7 @@ public class PublicChatWindow extends JFrame { InetAddress ip = InetAddress.getByName(ipField.getText()); pitiupi.sendUdpUnicast(msg, ip); + receiveMessage(msg); } catch (Exception ex) { Logger.getLogger( diff --git a/pitiupi.mpChat/src/plugin/MultiProtocolChat.java b/pitiupi.mpChat/src/plugin/MultiProtocolChat.java index 8d58155..bab8d2a 100644 --- a/pitiupi.mpChat/src/plugin/MultiProtocolChat.java +++ b/pitiupi.mpChat/src/plugin/MultiProtocolChat.java @@ -84,6 +84,12 @@ public class MultiProtocolChat extends Plugin { @Override public boolean receiveBytes(TcpConnection connection, byte[] bytes) { MpChatMessage mpChatMessage = parseMessage(bytes); + if (mpChatMessage == null) { + System.out.println("Invalid message received"); + return true; + } + else System.out.println(mpChatMessage.getMessage()); + privateChatController.receiveMessage(connection, mpChatMessage); return true; } diff --git a/pitiupi/src/pitiupi/control/plugins/PluginManager.java b/pitiupi/src/pitiupi/control/plugins/PluginManager.java index 60f29f4..62420b0 100644 --- a/pitiupi/src/pitiupi/control/plugins/PluginManager.java +++ b/pitiupi/src/pitiupi/control/plugins/PluginManager.java @@ -61,8 +61,9 @@ public class PluginManager { private Plugin getPlugin(String pluginId) { for (LoadedPlugin loadedPlugin : loadedPlugins) { - if (loadedPlugin.getPlugin().getIdentifier().equals(pluginId)) + if (loadedPlugin.getPlugin().getIdentifier().equals(pluginId)) { return loadedPlugin.getPlugin(); + } } return null; } @@ -80,7 +81,7 @@ public class PluginManager { plugin.receivePrivateConnection(connection); - return false; + return true; } public void handleDisconnection(TcpConnection connection, String receiverId) { @@ -117,7 +118,6 @@ public class PluginManager { ServiceLoader serviceLoader = ServiceLoader.load(Plugin.class, classLoader); for (Plugin plugin : serviceLoader) { - System.out.println("Loading: " + plugin.getName()); LoadedPlugin loadedPlugin = new LoadedPlugin(plugin, classLoader); plugin.createPlugin(pitiupi); diff --git a/pitiupi/src/pitiupi/net/tcp/SocketTCP.java b/pitiupi/src/pitiupi/net/tcp/SocketTCP.java index 93400dd..09c7d46 100644 --- a/pitiupi/src/pitiupi/net/tcp/SocketTCP.java +++ b/pitiupi/src/pitiupi/net/tcp/SocketTCP.java @@ -66,8 +66,6 @@ public class SocketTCP extends Thread { try { serverSocket = new ServerSocket(connectionManager.getPort()); address = InetAddress.getByName(InetAddress.getLocalHost().getHostAddress()); - if (address != null) System.out.println("SocketTCP: "+ address); - else System.out.println("Adress: Null"); } catch (IOException ex) { System.out.println("There is no socket connection. Sorry."); System.out.println(ex.toString()); @@ -262,7 +260,6 @@ public class SocketTCP extends Thread { * @param connection conexão cujo fluxo de entrada será processado. */ private void startReceiver(TcpConnection connection) { - System.out.println("Starting TCP connection receiver."); if (!connection.isPrivate()) { publicConnectionReceiver(connection); @@ -275,7 +272,6 @@ public class SocketTCP extends Thread { } if (pluginManager.handleConnection(connection, connection.getReceiver())) { - System.out.println("Private connection receiver established."); privateConnectionReceiver(connection); } else { @@ -351,7 +347,6 @@ public class SocketTCP extends Thread { while (running) { try { byte[] message = connection.receive(); - System.out.println("Um plugin recebeu uma mensagem"); InfoMessage sysMessage = InfoMessage.parseSystemInfo(message); if (sysMessage == null) { diff --git a/pitiupi/src/pitiupi/net/tcp/TcpConnection.java b/pitiupi/src/pitiupi/net/tcp/TcpConnection.java index 00abb8d..d6cfb9d 100644 --- a/pitiupi/src/pitiupi/net/tcp/TcpConnection.java +++ b/pitiupi/src/pitiupi/net/tcp/TcpConnection.java @@ -6,6 +6,7 @@ import java.io.IOException; import java.net.InetAddress; import java.net.Socket; import java.net.SocketException; +import java.util.Arrays; /** * Representa uma conexão TCP ativa com um peer remoto. @@ -40,8 +41,6 @@ public class TcpConnection { this.input = new DataInputStream(socket.getInputStream()); this.output = new DataOutputStream(socket.getOutputStream()); this.address = socket.getInetAddress(); - if (address != null) System.out.println("TcpConnection: " + address); - else System.out.println("Adress: Null"); this.lastActivity = System.currentTimeMillis(); this.timeout = 300_000; // 5 minutos } @@ -60,8 +59,6 @@ public class TcpConnection { output.write(message); output.flush(); updateLastActivity(); - - System.out.println("TcpConnection enviou uma mensagem de tamanho: " + message.length); } /** @@ -77,12 +74,11 @@ public class TcpConnection { byte[] receive() throws IOException { int length = input.readInt(); - System.out.println("TcpConnection recebeu uma mensagem de tamanho: " + length); - if (length < 0) throw new IOException("Invalid message length."); byte[] message = input.readNBytes(length); + if (message.length != length) { throw new IOException("Connection closed before receiving the complete message."); }