Added sending broadcast message to all users on server from Admin Console.

This commit is contained in:
magenoxx 2012-01-25 19:13:27 +04:00
parent 8536d9d78d
commit bdb2754847
10 changed files with 114 additions and 33 deletions

View file

@ -34,7 +34,12 @@
package mage.server.console;
import java.awt.Cursor;
import mage.remote.Connection;
import mage.remote.Connection.ProxyType;
import org.apache.log4j.Logger;
import javax.swing.*;
import java.awt.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
@ -43,16 +48,6 @@ import java.util.Arrays;
import java.util.List;
import java.util.concurrent.CancellationException;
import java.util.concurrent.ExecutionException;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JDialog;
import javax.swing.JOptionPane;
import javax.swing.SwingWorker;
import mage.remote.Connection;
import mage.remote.Connection.ProxyType;
import org.apache.log4j.Logger;
/**
*
@ -416,11 +411,15 @@ public class ConnectDialog extends JDialog {
connection.setHost(this.txtServer.getText());
connection.setPort(Integer.valueOf(this.txtPort.getText()));
connection.setPassword(new String(txtPassword.getPassword()));
connection.setProxyType((ProxyType) this.cbProxyType.getSelectedItem());
connection.setProxyHost(this.txtProxyServer.getText());
connection.setProxyPort(Integer.valueOf(this.txtProxyPort.getText()));
connection.setProxyUsername(this.txtProxyUserName.getText());
connection.setProxyPassword(new String(this.txtPasswordField.getPassword()));
connection.setProxyType((ProxyType) this.cbProxyType.getSelectedItem());
if (!this.cbProxyType.getSelectedItem().equals(ProxyType.NONE)) {
connection.setProxyHost(this.txtProxyServer.getText());
connection.setProxyPort(Integer.valueOf(this.txtProxyPort.getText()));
connection.setProxyUsername(this.txtProxyUserName.getText());
connection.setProxyPassword(new String(this.txtPasswordField.getPassword()));
}
logger.debug("connecting: " + connection.getProxyType() + " " + connection.getProxyHost() + " " + connection.getProxyPort());
task = new ConnectTask();
task.execute();

View file

@ -56,6 +56,19 @@
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnConnectActionPerformed"/>
</Events>
</Component>
<Component class="javax.swing.JButton" name="btnSendMessage">
<Properties>
<Property name="actionCommand" type="java.lang.String" value="SendMessage"/>
<Property name="enabled" type="boolean" value="false"/>
<Property name="focusable" type="boolean" value="false"/>
<Property name="horizontalTextPosition" type="int" value="0"/>
<Property name="label" type="java.lang.String" value="Send Message"/>
<Property name="verticalTextPosition" type="int" value="3"/>
</Properties>
<Events>
<EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSendMessageActionPerformed"/>
</Events>
</Component>
<Component class="javax.swing.JLabel" name="lblStatus">
<Properties>
<Property name="text" type="java.lang.String" value="Not Connected"/>

View file

@ -34,12 +34,6 @@
package mage.server.console;
import java.util.UUID;
import java.util.prefs.Preferences;
import javax.swing.Box;
import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import mage.interfaces.MageClient;
import mage.interfaces.callback.ClientCallback;
import mage.remote.Connection;
@ -47,6 +41,10 @@ import mage.remote.Session;
import mage.utils.MageVersion;
import org.apache.log4j.Logger;
import javax.swing.*;
import java.util.UUID;
import java.util.prefs.Preferences;
/**
*
* @author BetaSteward_at_googlemail.com
@ -103,11 +101,13 @@ public class ConsoleFrame extends javax.swing.JFrame implements MageClient {
public void enableButtons() {
btnConnect.setEnabled(true);
btnConnect.setText("Disconnect");
btnSendMessage.setEnabled(true);
}
public void disableButtons() {
btnConnect.setEnabled(true);
btnConnect.setText("Connect");
btnSendMessage.setEnabled(false);
}
/** This method is called from within the constructor to
@ -121,6 +121,7 @@ public class ConsoleFrame extends javax.swing.JFrame implements MageClient {
jToolBar1 = new javax.swing.JToolBar();
btnConnect = new javax.swing.JButton();
btnSendMessage = new javax.swing.JButton();
lblStatus = new javax.swing.JLabel();
consolePanel1 = new mage.server.console.ConsolePanel();
@ -140,6 +141,19 @@ public class ConsoleFrame extends javax.swing.JFrame implements MageClient {
});
jToolBar1.add(btnConnect);
btnSendMessage.setActionCommand("SendMessage");
btnSendMessage.setEnabled(false);
btnSendMessage.setFocusable(false);
btnSendMessage.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
btnSendMessage.setLabel("Send Message");
btnSendMessage.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
btnSendMessage.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnSendMessageActionPerformed(evt);
}
});
jToolBar1.add(btnSendMessage);
lblStatus.setText("Not Connected");
jToolBar1.add(Box.createHorizontalGlue());
jToolBar1.add(lblStatus);
@ -173,6 +187,13 @@ public class ConsoleFrame extends javax.swing.JFrame implements MageClient {
}
}//GEN-LAST:event_btnConnectActionPerformed
private void btnSendMessageActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnSendMessageActionPerformed
String message = JOptionPane.showInputDialog(null, "Type message to send", "Broadcast message", JOptionPane.INFORMATION_MESSAGE);
if (message != null) {
session.sendBroadcastMessage(message);
}
}//GEN-LAST:event_btnSendMessageActionPerformed
/**
* @param args the command line arguments
*/
@ -190,6 +211,7 @@ public class ConsoleFrame extends javax.swing.JFrame implements MageClient {
// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton btnConnect;
private javax.swing.JButton btnSendMessage;
private mage.server.console.ConsolePanel consolePanel1;
private javax.swing.JToolBar jToolBar1;
private javax.swing.JLabel lblStatus;