Compare commits
3 Commits
27f3734ab0
...
465879cdae
| Author | SHA1 | Date |
|---|---|---|
|
|
465879cdae | |
|
|
5196c432db | |
|
|
4ddacd74fe |
|
|
@ -3,8 +3,6 @@ package jnet.client;
|
||||||
import jnet.client.gui.Tray;
|
import jnet.client.gui.Tray;
|
||||||
import jnet.client.gui.Window;
|
import jnet.client.gui.Window;
|
||||||
import jnet.client.network.NettyClient;
|
import jnet.client.network.NettyClient;
|
||||||
import java.io.FileNotFoundException;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.CopyOnWriteArrayList;
|
import java.util.concurrent.CopyOnWriteArrayList;
|
||||||
|
|
|
||||||
|
|
@ -147,6 +147,7 @@ public class ClientMessageParser {
|
||||||
MapObject new_mo = (MapObject) msg.getMsg();
|
MapObject new_mo = (MapObject) msg.getMsg();
|
||||||
// pridat do seznamu
|
// pridat do seznamu
|
||||||
Client.mapObject.add(new_mo);
|
Client.mapObject.add(new_mo);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case Message.REMOVE_OBJECT:
|
case Message.REMOVE_OBJECT:
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,7 @@ public class EventsPanel extends JPanel {
|
||||||
|
|
||||||
int limit = 50;
|
int limit = 50;
|
||||||
|
|
||||||
String column[] = {"Začátek", "Konec", "Stav", "Mapa", "Zařízení"};
|
String column[] = {"Začátek", "Konec", "Délka", "Stav", "Mapa", "Zařízení"};
|
||||||
DefaultTableModel tableModel = new DefaultTableModel(column, 0) {
|
DefaultTableModel tableModel = new DefaultTableModel(column, 0) {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -32,8 +32,8 @@ public class EventsPanel extends JPanel {
|
||||||
|
|
||||||
Collections.sort(Client.events, new EventComparator());
|
Collections.sort(Client.events, new EventComparator());
|
||||||
Collections.reverse(Client.events);
|
Collections.reverse(Client.events);
|
||||||
|
|
||||||
if (limit > Client.events.size()){
|
if (limit > Client.events.size()) {
|
||||||
limit = Client.events.size();
|
limit = Client.events.size();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -42,6 +42,7 @@ public class EventsPanel extends JPanel {
|
||||||
Object[] d = {
|
Object[] d = {
|
||||||
getDate(Client.events.get(i).getStart()),
|
getDate(Client.events.get(i).getStart()),
|
||||||
getDate(Client.events.get(i).getEnd()),
|
getDate(Client.events.get(i).getEnd()),
|
||||||
|
getDuration(Client.events.get(i).getStart(), Client.events.get(i).getEnd()),
|
||||||
Client.events.get(i).getDescription(),
|
Client.events.get(i).getDescription(),
|
||||||
info[0],
|
info[0],
|
||||||
info[1]};
|
info[1]};
|
||||||
|
|
@ -64,16 +65,29 @@ public class EventsPanel extends JPanel {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String getDuration(long startTime, long endTime) {
|
||||||
|
if (endTime != 0) {
|
||||||
|
long difference = endTime - startTime;
|
||||||
|
|
||||||
|
// převod na sekundy, minuty, hodiny
|
||||||
|
long seconds = difference / 1000;
|
||||||
|
long minutes = difference / (1000 * 60);
|
||||||
|
long hours = difference / (1000 * 60 * 60);
|
||||||
|
|
||||||
|
SimpleDateFormat ft = new SimpleDateFormat("HH:mm:ss");
|
||||||
|
return hours + "h " + minutes + "m " + seconds + "s";
|
||||||
|
}
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
|
||||||
private String[] getObjetInfo(int id) {
|
private String[] getObjetInfo(int id) {
|
||||||
ListIterator<Map> iteratorMap = Client.maps.listIterator();
|
for (MapObject mapObject : Client.mapObject) {
|
||||||
ListIterator<MapObject> iteratorMapObject = Client.mapObject.listIterator();
|
if (mapObject.getId() == id) {
|
||||||
while (iteratorMap.hasNext()) {
|
for (Map map : Client.maps) {
|
||||||
Map map = iteratorMap.next();
|
if (map.getId() == mapObject.getMap()) {
|
||||||
while (iteratorMapObject.hasNext()) {
|
String[] data = {map.getName(), mapObject.getName()};
|
||||||
MapObject obj = iteratorMapObject.next();
|
return data;
|
||||||
if (obj.getId() == id) {
|
}
|
||||||
String[] data = {map.getName(), obj.getName()};
|
|
||||||
return data;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -10,6 +10,7 @@ import java.awt.event.ActionListener;
|
||||||
import javax.swing.BoxLayout;
|
import javax.swing.BoxLayout;
|
||||||
import javax.swing.JButton;
|
import javax.swing.JButton;
|
||||||
import javax.swing.JLabel;
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JOptionPane;
|
||||||
import javax.swing.JPanel;
|
import javax.swing.JPanel;
|
||||||
import javax.swing.JScrollPane;
|
import javax.swing.JScrollPane;
|
||||||
import javax.swing.JTabbedPane;
|
import javax.swing.JTabbedPane;
|
||||||
|
|
@ -18,6 +19,7 @@ import javax.swing.JTextField;
|
||||||
import javax.swing.event.ChangeEvent;
|
import javax.swing.event.ChangeEvent;
|
||||||
import javax.swing.event.ChangeListener;
|
import javax.swing.event.ChangeListener;
|
||||||
import javax.swing.table.DefaultTableModel;
|
import javax.swing.table.DefaultTableModel;
|
||||||
|
import jnet.lib.LogFile;
|
||||||
import jnet.lib.Message;
|
import jnet.lib.Message;
|
||||||
import jnet.lib.object.SnmpProfile;
|
import jnet.lib.object.SnmpProfile;
|
||||||
import jnet.lib.object.User;
|
import jnet.lib.object.User;
|
||||||
|
|
@ -54,7 +56,7 @@ public class ServerSettingsPanel extends JTabbedPane {
|
||||||
JPanel panel = new JPanel();
|
JPanel panel = new JPanel();
|
||||||
|
|
||||||
panel.setLayout(null);
|
panel.setLayout(null);
|
||||||
|
|
||||||
int x1 = 80;
|
int x1 = 80;
|
||||||
int x2 = 150;
|
int x2 = 150;
|
||||||
|
|
||||||
|
|
@ -62,44 +64,53 @@ public class ServerSettingsPanel extends JTabbedPane {
|
||||||
pingLabel.setFont(pingLabel.getFont().deriveFont(20f));
|
pingLabel.setFont(pingLabel.getFont().deriveFont(20f));
|
||||||
pingLabel.setBounds(20, 20, 150, 25);
|
pingLabel.setBounds(20, 20, 150, 25);
|
||||||
panel.add(pingLabel);
|
panel.add(pingLabel);
|
||||||
|
|
||||||
|
JTextField repeateField = new JTextField(String.valueOf(Client.serverConfig.getPingAttempt()));
|
||||||
|
repeateField.setBounds(x1, 60, 50, 25);
|
||||||
|
panel.add(repeateField);
|
||||||
|
|
||||||
|
JLabel repeateLabel = new JLabel("Opakovat ping každých ... sekund");
|
||||||
|
repeateLabel.setBounds(x2, 60, 300, 25);
|
||||||
|
panel.add(repeateLabel);
|
||||||
|
|
||||||
JTextField pokusuField = new JTextField(String.valueOf(Client.serverConfig.getPingAttempt()));
|
JTextField pokusuField = new JTextField(String.valueOf(Client.serverConfig.getPingAttempt()));
|
||||||
pokusuField.setBounds(x1, 60, 50, 25);
|
pokusuField.setBounds(x1, 100, 50, 25);
|
||||||
panel.add(pokusuField);
|
panel.add(pokusuField);
|
||||||
|
|
||||||
JLabel pokusuLabel = new JLabel("Počet pokusů před vyhodnocenim offline");
|
JLabel pokusuLabel = new JLabel("Počet pokusů před vyhodnocenim offline");
|
||||||
pokusuLabel.setBounds(x2, 60, 300, 25);
|
pokusuLabel.setBounds(x2, 100, 300, 25);
|
||||||
panel.add(pokusuLabel);
|
panel.add(pokusuLabel);
|
||||||
|
|
||||||
JTextField timeoutField = new JTextField(String.valueOf(Client.serverConfig.getPingTimeout()));
|
JTextField timeoutField = new JTextField(String.valueOf(Client.serverConfig.getPingTimeout()));
|
||||||
timeoutField.setBounds(x1, 100, 50, 25);
|
timeoutField.setBounds(x1, 140, 50, 25);
|
||||||
panel.add(timeoutField);
|
panel.add(timeoutField);
|
||||||
|
|
||||||
JLabel timeoutLabel = new JLabel("Úroveň timeout (ms)");
|
JLabel timeoutLabel = new JLabel("Úroveň timeout (s)");
|
||||||
timeoutLabel.setBounds(x2, 100, 300, 25);
|
timeoutLabel.setBounds(x2, 140, 300, 25);
|
||||||
panel.add(timeoutLabel);
|
panel.add(timeoutLabel);
|
||||||
|
|
||||||
JTextField pokusuNestField = new JTextField(String.valueOf(Client.serverConfig.getInstabilityAttempt()));
|
JTextField pokusuNestField = new JTextField(String.valueOf(Client.serverConfig.getInstabilityAttempt()));
|
||||||
pokusuNestField.setBounds(x1, 140, 50, 25);
|
pokusuNestField.setBounds(x1, 180, 50, 25);
|
||||||
panel.add(pokusuNestField);
|
panel.add(pokusuNestField);
|
||||||
|
|
||||||
JLabel pokusuNestLabel = new JLabel("Počet pokusů před vyhodnocením nestability");
|
JLabel pokusuNestLabel = new JLabel("Počet pokusů před vyhodnocením nestability");
|
||||||
pokusuNestLabel.setBounds(x2, 140, 300, 25);
|
pokusuNestLabel.setBounds(x2, 180, 300, 25);
|
||||||
panel.add(pokusuNestLabel);
|
panel.add(pokusuNestLabel);
|
||||||
|
|
||||||
JTextField nestField = new JTextField(String.valueOf(Client.serverConfig.getInstabilityLimit()));
|
JTextField nestField = new JTextField(String.valueOf(Client.serverConfig.getInstabilityLimit()));
|
||||||
nestField.setBounds(x1, 180, 50, 25);
|
nestField.setBounds(x1, 220, 50, 25);
|
||||||
panel.add(nestField);
|
panel.add(nestField);
|
||||||
|
|
||||||
JLabel nestLabel = new JLabel("Úroveň nestability (ms)");
|
JLabel nestLabel = new JLabel("Úroveň nestability (s)");
|
||||||
nestLabel.setBounds(x2, 180, 300, 25);
|
nestLabel.setBounds(x2, 220, 300, 25);
|
||||||
panel.add(nestLabel);
|
panel.add(nestLabel);
|
||||||
|
|
||||||
JButton button = new JButton("Uložit");
|
JButton button = new JButton("Uložit");
|
||||||
button.setAlignmentX(Component.CENTER_ALIGNMENT);
|
button.setAlignmentX(Component.CENTER_ALIGNMENT);
|
||||||
button.addActionListener(new ActionListener() {
|
button.addActionListener(new ActionListener() {
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
Client.serverConfig.setPingRepeat(Integer.valueOf(repeateField.getText()));
|
||||||
Client.serverConfig.setPingAttempt(Integer.valueOf(pokusuField.getText()));
|
Client.serverConfig.setPingAttempt(Integer.valueOf(pokusuField.getText()));
|
||||||
Client.serverConfig.setPingTimeout(Integer.valueOf(timeoutField.getText()));
|
Client.serverConfig.setPingTimeout(Integer.valueOf(timeoutField.getText()));
|
||||||
Client.serverConfig.setInstabilityAttempt(Integer.valueOf(pokusuNestField.getText()));
|
Client.serverConfig.setInstabilityAttempt(Integer.valueOf(pokusuNestField.getText()));
|
||||||
|
|
@ -107,9 +118,28 @@ public class ServerSettingsPanel extends JTabbedPane {
|
||||||
NettyClient.send(Message.SERVER_CONFIG, Client.serverConfig);
|
NettyClient.send(Message.SERVER_CONFIG, Client.serverConfig);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
button.setBounds(x1, 220, 100, 40);
|
button.setBounds(x1, 300, 100, 40);
|
||||||
panel.add(button);
|
panel.add(button);
|
||||||
|
|
||||||
|
JButton buttonRestart = new JButton("Restartovat server");
|
||||||
|
//buttonRestart.setAlignmentX(Component.CENTER_ALIGNMENT);
|
||||||
|
buttonRestart.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
int result = JOptionPane.showConfirmDialog(null,
|
||||||
|
"Opravdu chceš pokračovat?",
|
||||||
|
"Restart serveru",
|
||||||
|
JOptionPane.YES_NO_OPTION);
|
||||||
|
|
||||||
|
if (result == JOptionPane.YES_OPTION) {
|
||||||
|
LogFile.printInfo("Odeslan pozadavek na restart serveru");
|
||||||
|
NettyClient.send(Message.RESTART, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
buttonRestart.setBounds(x1+200, 300, 150, 40);
|
||||||
|
panel.add(buttonRestart);
|
||||||
|
|
||||||
return new JScrollPane(panel);
|
return new JScrollPane(panel);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue