+ /**
+ * {@inheritDoc}
+ */
+ public void coreLoaded() {
+ mainWindow.setVisible(true);
+ mainWindow.setStatusBarText(I18n.get("mainWindow.statusBar.coreLoaded"));
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void coreStopped() {
+ mainWindow.setStatusBarText(I18n.get("mainWindow.statusBar.coreStopped"));
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void nodeAdded(Node node) {
+ logger.log(Level.INFO, "node added: " + node);
+ nodeList.add(node);
+ logger.log(Level.FINE, "nodeList.size(): " + nodeList.size());
+ manageNodesDialog.setNodeList(nodeList);
+ rebuildNodeActions(nodeList);
+ mainWindow.refreshNodeMenuItems();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void nodeRemoved(Node node) {
+ logger.log(Level.INFO, "node removed: " + node);
+ nodeList.remove(node);
+ rebuildNodeActions(nodeList);
+ mainWindow.refreshNodeMenuItems();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void nodeConnecting(Node node) {
+ Action nodeConnectAction = nodeNodeConnectActions.get(node);
+ nodeConnectActions.remove(nodeConnectAction);
+ mainWindow.setStatusBarText(I18n.get("mainWindow.statusBar.connectingToNode", node.getName(), node.getHostname(), node.getPort()));
+ mainWindow.refreshNodeMenuItems();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void nodeConnected(Node node) {
+ Action nodeDisconnectAction = nodeNodeDisconnectActions.get(node);
+ nodeDisconnectActions.add(nodeDisconnectAction);
+ mainWindow.setStatusBarText(I18n.get("mainWindow.statusBar.connectedToNode", node.getName(), node.getHostname(), node.getPort()));
+ mainWindow.refreshNodeMenuItems();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void nodeConnectionFailed(Node node, Throwable cause) {
+ Action nodeConnectAction = nodeNodeConnectActions.get(node);
+ nodeConnectActions.add(nodeConnectAction);
+ mainWindow.setStatusBarText(I18n.get("mainWindow.statusBar.connectionToNodeFailed", node.getName(), node.getHostname(), node.getPort(), (cause != null) ? cause.getMessage() : "no reason given"));
+ JOptionPane.showMessageDialog(mainWindow, I18n.get("mainWindow.error.nodeConnectionFailed.message", node.getName(), node.getHostname(), node.getPort(), (cause != null) ? cause.getMessage() : "no reason given"), I18n.get("mainWindow.error.nodeConnectionFailed.title"), JOptionPane.ERROR_MESSAGE);
+ mainWindow.refreshNodeMenuItems();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void nodeDisconnected(Node node, Throwable throwable) {
+ Action nodeConnectAction = nodeNodeConnectActions.get(node);
+ nodeConnectActions.add(nodeConnectAction);
+ Action nodeDisconnectAction = nodeNodeDisconnectActions.get(node);
+ nodeDisconnectActions.remove(nodeDisconnectAction);
+ mainWindow.setStatusBarText(I18n.get("mainWindow.statusBar.disconnectedFromNode", node.getName(), node.getHostname(), node.getPort()));
+ mainWindow.refreshNodeMenuItems();
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void requestAdded(Request request) {
+ logger.log(Level.INFO, "request added to node: " + request + ", " + request.getNode());
+ /* TODO - implement */
+ requestTableModel.addRequest(request);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ public void requestProgressed(Request request) {
+ /* TODO - update table model */
+ }
+
+ /**
+ * @see net.pterodactylus.jsite.core.CoreListener#requestRemoved(net.pterodactylus.jsite.core.Request)
+ */
+ public void requestRemoved(Request request) {
+ requestTableModel.removeRequest(request);
+ }
+
+ //
+ // INTERFACE LoggingListener
+ //
+
+ /**
+ * {@inheritDoc}
+ */
+ public void logged(LogRecord logRecord) {
+ logWindow.logged(logRecord);
+ }
+