From 5c691892938c090a02d338f41605ab789858254e Mon Sep 17 00:00:00 2001 From: GustavoHMDS Date: Tue, 11 Aug 2026 14:30:17 -0300 Subject: [PATCH] atualizando documentacao depois do merge --- .idea/workspace.xml | 49 ++++++------------- pitiupi/src/pitiupi/GUI/MenuBar.java | 5 ++ .../src/pitiupi/control/HeartbeatManager.java | 26 +++++++++- pitiupi/src/pitiupi/net/Socket.java | 5 +- 4 files changed, 49 insertions(+), 36 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 6f880d3..e7c6da3 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -5,27 +5,10 @@ - - - - - - - - - - - - - - - - - - - - + + + - { + "keyToString": { + "Application.Main.executor": "Run", + "ModuleVcsDetector.initialDetectionPerformed": "true", + "RunOnceActivity.ShowReadmeOnStart": "true", + "RunOnceActivity.TerminalTabsStorage.copyFrom.TerminalArrangementManager.252": "true", + "RunOnceActivity.git.unshallow": "true", + "git-widget-placeholder": "feature/help-and-documentation", + "ignore.virus.scanning.warn.message": "true", + "kotlin-language-version-configured": "true", + "last_opened_file_path": "C:/Users/extre/OneDrive/Documentos/Faculdade/2026_02/Monitoria/Pitiupi", + "settings.editor.selected.configurable": "preferences.keymap" } -}]]> +} diff --git a/pitiupi/src/pitiupi/GUI/MenuBar.java b/pitiupi/src/pitiupi/GUI/MenuBar.java index 1e3a4a8..db4ca35 100644 --- a/pitiupi/src/pitiupi/GUI/MenuBar.java +++ b/pitiupi/src/pitiupi/GUI/MenuBar.java @@ -29,6 +29,11 @@ public class MenuBar extends JMenuBar { private javax.swing.JMenuItem exitMenu; private final MainWindow mainWindow; + /** + * Cria a barra de menus principal da aplicação. + * + * @param mainWindow mainWindow janela principal da aplicação utilizada para executar + */ public MenuBar(MainWindow mainWindow) { this.mainWindow = mainWindow; this.initComponents(); diff --git a/pitiupi/src/pitiupi/control/HeartbeatManager.java b/pitiupi/src/pitiupi/control/HeartbeatManager.java index 4de8a4b..725cede 100644 --- a/pitiupi/src/pitiupi/control/HeartbeatManager.java +++ b/pitiupi/src/pitiupi/control/HeartbeatManager.java @@ -35,16 +35,28 @@ public class HeartbeatManager { private ScheduledExecutorService scheduler; private final String instanceId = UUID.randomUUID().toString(); + /** + * Cria um gerenciador de heartbeat associado à janela principal da aplicação. + * + * @param mainWindow janela principal utilizada para obter o nome do usuário + * e o socket de comunicação. + */ public HeartbeatManager(MainWindow mainWindow) { this.mainWindow = mainWindow; } + /** + * Inicia o mecanismo de heartbeat. + */ public void start() { scheduler = Executors.newScheduledThreadPool(1); scheduler.scheduleAtFixedRate(this::announce, 0, HEARTBEAT_INTERVAL_MS, TimeUnit.MILLISECONDS); scheduler.scheduleAtFixedRate(this::checkTimeouts, HEARTBEAT_INTERVAL_MS, HEARTBEAT_INTERVAL_MS, TimeUnit.MILLISECONDS); } + /** + * Para o mecanismo de heartbeat e encerra as tarefas agendadas. + */ public void stop() { if (scheduler != null) { scheduler.shutdownNow(); @@ -64,8 +76,8 @@ public class HeartbeatManager { /** * Processa uma mensagem de heartbeat recebida de outro usuário. * - *

Atualiza a informação do peer correspondente e notifica os listeners - * caso um novo usuário seja identificado.

+ *

Atualiza o momento da última atividade do peer correspondente e notifica os listeners + * caso outra instância da aplicação seja identificada.

* *

Mensagens de heartbeat enviadas pela própria aplicação são ignoradas.

* @@ -118,10 +130,20 @@ public class HeartbeatManager { l.onPeersChanged(new ArrayList<>(peers.values())); } + /** + * Remove um listener previamente registrado. + * + * @param l listener que deixará de receber atualizações. + */ public void removePeerListener(PeerListener l) { listeners.remove(l); } + /** + * Retorna uma cópia da lista atual de peers conhecidos. + * + * @return lista contendo os peers atualmente conhecidos. + */ public List getPeers() { return new ArrayList<>(peers.values()); } diff --git a/pitiupi/src/pitiupi/net/Socket.java b/pitiupi/src/pitiupi/net/Socket.java index 139484a..91c2c89 100644 --- a/pitiupi/src/pitiupi/net/Socket.java +++ b/pitiupi/src/pitiupi/net/Socket.java @@ -20,7 +20,7 @@ import pitiupi.plugin.Plugin; import pitiupi.net.HeartbeatMessage; /** - * Responsável pela comunicação multicast entre a aplicação e os plugins. + * "Responsável pela comunicação multicast da aplicação e pelo encaminhamento de mensagens aos plugins." * *

Esta classe gerencia o envio e o recebimento de mensagens, além de * manter a conexão com o grupo multicast utilizado pela aplicação.

@@ -72,6 +72,9 @@ public class Socket extends Thread { multicastSocket.send(msgPacket); } + /** + * Encerra a comunicação multicast e interrompe a recepção de mensagens. + */ public void close() { running = false; if (multicastSocket != null) {