Skip to content
Snippets Groups Projects
Commit 2b46c2a5 authored by Maysam Zoor's avatar Maysam Zoor
Browse files

updating functionality

parent 51e0b282
No related branches found
No related tags found
2 merge requests!205Compare xml,!196Compare xml
......@@ -26,6 +26,7 @@ import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.Popup;
......@@ -60,7 +61,24 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
private JFileChooser fc;
private File file;
private SimulationTrace selectedST;
private Vector<SimulationTransaction> transFile1;
private static Vector<SimulationTransaction> transFile1;
public Vector<SimulationTransaction> getTransFile1() {
return transFile1;
}
public void setTransFile1(Vector<SimulationTransaction> transFile1) {
this.transFile1 = transFile1;
}
public Vector<SimulationTransaction> getTransFile2() {
return transFile2;
}
public void setTransFile2(Vector<SimulationTransaction> transFile2) {
this.transFile2 = transFile2;
}
private Vector<SimulationTransaction> transFile2;
private SimulationTransaction st = new SimulationTransaction();
private JTextField file2 = new JTextField();
......@@ -75,7 +93,6 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
super(_title);
System.out.println("in hereee");
this.selectedST = sST;
GridLayout myLayout = new GridLayout(3, 1);
......@@ -88,7 +105,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
// setIconImage(IconManager.img5100);
// setBackground(Color.WHITE);
System.out.println("in main");
fc = new JFileChooser();
JPanel buttonPanel = new JPanel(new GridBagLayout()); // use FlowLayout
......@@ -103,6 +120,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.gridy = 0;
c.weightx = 1;
c.weighty = 1;
c.anchor = GridBagConstraints.WEST;
buttonPanel.add(lab1, c);
JLabel lab2 = new JLabel("Secound Simulation Traces File ", JLabel.LEFT);
......@@ -112,6 +130,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.gridy = 1;
c.weightx = 1;
c.weighty = 1;
c.anchor = GridBagConstraints.WEST;
buttonPanel.add(lab2, c);
file1.setEditable(false);
......@@ -121,7 +140,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 1;
c.gridy = 0;
c.weightx = 1;
c.weightx = 2;
c.weighty = 1;
buttonPanel.add(file1, c);
......@@ -152,7 +171,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 3;
c.gridy = 2;
c.weightx = 1;
c.weightx = 5;
c.weighty = 1;
buttonPanel.add(parse, c);
......@@ -161,7 +180,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 3;
c.gridy = 3;
c.weightx = 1;
c.weightx = 5;
c.weighty = 1;
buttonPanel.add(difference, c);
......@@ -202,7 +221,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
@Override
public void actionPerformed(ActionEvent e) {
System.out.println(e.getActionCommand());
// System.out.println(e.getActionCommand());
if (e.getSource() == browse) {
// Handle open button action.
......@@ -216,11 +235,12 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
} else if (e.getSource() == parse) {
// Handle open button action.
System.out.println("Time to parse");
System.out.println(selectedST.getFullPath());
System.out.println(file.getPath());
// System.out.println("Time to parse");
// System.out.println(selectedST.getFullPath());
// System.out.println(file.getPath());
try {
int x = parseXML(selectedST.getFullPath(), file.getPath());
DrawSimulationResults(transFile1, transFile2);
} catch (SAXException e1) {
// TODO Auto-generated catch block
......@@ -234,12 +254,17 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
}
} else if (e.getSource() == latencyDetails) {
System.out.println("Time for latency analysis");
//System.out.println("Time for latency analysis");
JTable table = newContentPane.getTable();
JFrameShowLatencyDetails showLatencyDetails = new JFrameShowLatencyDetails(transFile1, transFile2,
devicesDropDownCombo1.getSelectedItem(), tracesCombo1.getSelectedItem(),
devicesDropDownCombo2.getSelectedItem(), tracesCombo2.getSelectedItem());
} else if (e.getSource() == difference) {
// Handle open button action.
System.out.println("Time to show the difference");
//System.out.println("Time to show the difference");
newContentPane.showDifference();
// this.add(newContentPane);
......@@ -249,9 +274,9 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
Vector<Object> transacationsDropDown1 = newContentPane
.loadTransacationsDropDown(devicesDropDownCombo1.getSelectedItem());
System.out.println("Time to show the difference" + transacationsDropDown1.size());
//System.out.println("Time to show the difference" + transacationsDropDown1.size());
System.out.println("Time to show the difference" + tracesCombo1.getSelectedIndex());
//System.out.println("Time to show the difference" + tracesCombo1.getSelectedIndex());
final DefaultComboBoxModel<Object> model = new DefaultComboBoxModel<Object>(transacationsDropDown1);
......@@ -261,9 +286,9 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
Vector<Object> transacationsDropDown2 = newContentPane
.loadTransacationsDropDown(devicesDropDownCombo2.getSelectedItem());
System.out.println("Time to show the difference" + transacationsDropDown2.size());
// System.out.println("Time to show the difference" + transacationsDropDown2.size());
System.out.println("Time to show the difference" + tracesCombo2.getSelectedIndex());
// System.out.println("Time to show the difference" + tracesCombo2.getSelectedIndex());
final DefaultComboBoxModel<Object> model = new DefaultComboBoxModel<Object>(transacationsDropDown2);
......@@ -273,7 +298,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
}
// Returns the currentY position
private int parseXML(String file1Path, String file2Path)
public int parseXML(String file1Path, String file2Path)
throws SAXException, IOException, ParserConfigurationException {
if (file1Path.length() == 0 || file2Path.length() == 0)
......@@ -290,9 +315,8 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
saxParser.parse(new File(file2Path), handler);
transFile2 = handler.getStList();
System.out.println("transFile1 :" + transFile1.size());
System.out.println("transFile2 :" + transFile2.size());
DrawSimulationResults(transFile1, transFile2);
//System.out.println("transFile1 :" + transFile1.size());
// System.out.println("transFile2 :" + transFile2.size());
/*
* // Print all employees. for (SimulationTransaction st1 : transFile2) {
......@@ -324,7 +348,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
// this.repaint();
// this.add(newContentPane);
System.out.println(" rewrite table");
// System.out.println(" rewrite table");
} else {
......@@ -333,7 +357,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
newContentPane.drawTable();
System.out.println(" New table");
// System.out.println(" New table");
this.add(newContentPane);
DrawLatencyPanel();
......@@ -348,21 +372,17 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
}
private void DrawLatencyPanel() {
JPanel latencyPanel = new JPanel(new GridBagLayout()); // use FlowLayout
GridBagConstraints c = new GridBagConstraints();
latencyPanel.setBorder(new javax.swing.border.TitledBorder("Latency for Simulation Traces File"));
c.fill = GridBagConstraints.NORTHWEST;
JTextField file1 = new JTextField();
JLabel lab1 = new JLabel("Latency for Simulation Traces File ", JLabel.LEFT);
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 0;
c.gridy = 0;
// c.weightx = 0;
// c.weighty = 0;
latencyPanel.add(lab1, c);
Vector<Object> devicesDropDown1 = newContentPane.loadDevicesDropDown();
devicesDropDownCombo1 = new JComboBox<Object>(devicesDropDown1);
......@@ -373,9 +393,10 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 0;
c.gridy = 1;
// c.weightx = 0;
// c.weighty = 1;
c.gridy = 0;
c.weightx = 1;
c.weighty = 1;
c.anchor = GridBagConstraints.WEST;
latencyPanel.add(devicesDropDownCombo1, c);
// String[] choices2 = { "CHOICE 1","CHOICE 2", "CHOICE 3","CHOICE 4","CHOICE
......@@ -383,9 +404,9 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 0;
c.gridy = 2;
// c.weightx = 0;
// c.weighty =2;
c.gridy = 1;
c.weightx = 1;
c.weighty = 1;
latencyPanel.add(tracesCombo1, c);
this.add(latencyPanel);
......@@ -401,7 +422,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 1;
c.gridy = 1;
c.gridy = 0;
// c.weightx = 1;
// c.weighty = 1;
latencyPanel.add(devicesDropDownCombo2, c);
......@@ -411,7 +432,7 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 1;
c.gridy = 2;
c.gridy = 1;
// c.weightx = 0;
// c.weighty =2;
latencyPanel.add(tracesCombo2, c);
......@@ -422,8 +443,8 @@ public class JFrameCompareSimulationTraces extends JFrame implements ActionListe
latencyDetails = new JButton("latency Details");
latencyDetails.addActionListener(this);
c.fill = GridBagConstraints.NORTHWEST;
c.gridx = 2;
c.gridy = 2;
c.gridx = 1;
c.gridy = 3;
c.weightx = 1;
c.weighty = 1;
latencyPanel.add(latencyDetails, c);
......
package ui.interactivesimulation;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.GridLayout;
import java.awt.Rectangle;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Vector;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.SwingUtilities;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableCellRenderer;
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
import javax.swing.table.TableModel;
import javafx.collections.FXCollections;
import javafx.scene.Scene;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
import javafx.scene.chart.LineChart;
import javafx.scene.chart.NumberAxis;
public class JPanelCompareXmlGraph extends JPanel implements TableModelListener {
private int[] graphSource;
static JTable table, tableUpdated;
public static JTable table, tableUpdated;
private boolean DEBUG = false;
private String[] columnNames;
......@@ -48,8 +29,8 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
return;
}
System.out.println("transFile1*****************" + transFile1.size());
System.out.println("transFile2*******************" + transFile2.size());
// System.out.println("transFile1*****************" + transFile1.size());
// System.out.println("transFile2*******************" + transFile2.size());
int maxTime = -1;
int rowIndex = 0;
......@@ -97,7 +78,8 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
}
}
System.out.println("-------------------------- " + "all devices Done" + " ---------------------------------");
// System.out.println("-------------------------- " + "all devices Done" + "
// ---------------------------------");
columnNames = new String[maxTime + 2];
data = new Object[deviceNames1.size() + deviceNames2.size()][maxTime + 2];
......@@ -116,8 +98,39 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
for (int i = 0; i < Integer.parseInt(st.length); i++) {
// String[] sentences2 = st.command.split("__");
// for (int j = 0; j < sentences2.length; j++) {
// String s1 = sentences2[j];
// System.out.println("st.command : " + st.command);
// System.out.println("sentences2 : " + sentences2);
// System.out.println("substring : " + s1);
// }
String[] sentences2 = null;
sentences2 = st.command.split("__");
if (sentences2[0].contains(",") && sentences2.length > 1)
{
String[] writeCommand = sentences2[0].split(",");
st.command = writeCommand[0] + " " + sentences2[1];
} else if (sentences2[0].contains(" ") && sentences2.length > 1)
{
String[] writeCommand = sentences2[0].split(" ");
st.command = writeCommand[0] + " " + sentences2[1];
}
data[allDevices.indexOf(dName.concat("1"))][Integer.parseInt(st.startTime) + i
+ 2] = st.command;
;
data[allDevices.indexOf(dName.concat("1"))][1] = "transFile 1";
}
}
......@@ -125,8 +138,9 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
}
}
System.out.println(
"-------------------------- " + "all transactions 1 Done" + " ---------------------------------");
// System.out.println(
// "-------------------------- " + "all transactions 1 Done" + "
// ---------------------------------");
for (SimulationTransaction st : transFile2) {
......@@ -137,6 +151,28 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
for (int i = 0; i < Integer.parseInt(st.length); i++) {
String[] sentences2 = null;
sentences2 = st.command.split("__");
if (sentences2[0].contains(",") && sentences2.length > 1)
{
String[] writeCommand = sentences2[0].split(",");
st.command = writeCommand[0] + " " + sentences2[1];
} else if (sentences2[0].contains(" ") && sentences2.length > 1)
{
String[] writeCommand = sentences2[0].split(" ");
st.command = writeCommand[0] + " " + sentences2[1];
}
data[allDevices.indexOf(dName.concat("2"))][Integer.parseInt(st.startTime) + i
+ 2] = st.command;
data[allDevices.indexOf(dName.concat("2"))][1] = "transFile 2";
......@@ -147,19 +183,19 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
}
System.out.println(
"-------------------------- " + "all transactions 2 Done" + " ---------------------------------");
for (String dName : allDevices) {
data[allDevices.indexOf(dName)][0] = dName.substring(0, dName.length() - 1);
;
}
System.out.println("-------------------------- " + maxTime + " ---------------------------------");
// System.out.println("-------------------------- " + maxTime + "
// ---------------------------------");
System.out.println("-------------------------- " + deviceNames1 + " ---------------------------------");
// System.out.println("-------------------------- " + deviceNames1 + "
// ---------------------------------");
System.out.println("----------*****---------------- " + deviceNames2 + " ---------------------------------");
// System.out.println("----------*****---------------- " + deviceNames2 + "
// ---------------------------------");
for (int i = 2; i < maxTime + 2; i++) {
......@@ -184,7 +220,7 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
// For each table column, sets its renderer to the previously
// created table renderer.
System.out.println("ncols : " + ncols);
// System.out.println("ncols : " + ncols);
for (int c = 0; c < ncols; c++) {
TableColumn tc = tcm.getColumn(c);
......@@ -200,24 +236,24 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
int numCols = table.getColumnCount();
javax.swing.table.TableModel model = table.getModel();
System.out.println("Value of data: ");
// System.out.println("Value of data: ");
for (int i = 0; i < numRows; i++) {
System.out.print(" row " + i + ":");
for (int j = 0; j < numCols; j++) {
System.out.print(" " + model.getValueAt(i, j));
// System.out.print(" " + model.getValueAt(i, j));
}
System.out.println();
// System.out.println();
}
System.out.println("--------------------------");
// System.out.println("--------------------------");
}
void showDifference() {
public void showDifference() {
// TODO Auto-generated method stub
int numRows = table.getRowCount();
int numCols = table.getColumnCount();
System.out.println("Value of data: ");
// System.out.println("Value of data: ");
for (int j = 2; j < numCols; j++) {
......@@ -231,7 +267,7 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
if (i != k && table.getValueAt(i, j) != null && table.getValueAt(k, j) != null
&& table.getValueAt(i, j).equals(table.getValueAt(k, j))) {
System.out.print(table.getValueAt(i, j) + " ==" + table.getValueAt(k, j));
// System.out.print(table.getValueAt(i, j) + " ==" + table.getValueAt(k, j));
table.setValueAt(null, k, j);
table.setValueAt(null, i, j);
......@@ -261,7 +297,7 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
scrollPane.revalidate();
scrollPane.repaint();
System.out.println("similar eraised" + numRows + "---" + numCols);
// System.out.println("similar eraised" + numRows + "---" + numCols);
}
......@@ -277,7 +313,7 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
scrollPane.setVisible(true);
add(scrollPane);
System.out.println("table added :");
// System.out.println("table added :");
}
......@@ -297,7 +333,7 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
scrollPane.revalidate();
scrollPane.repaint();
// scrollPane.setVisible(true);
System.out.println("revalidated");
// System.out.println("revalidated");
}
......@@ -309,47 +345,53 @@ public class JPanelCompareXmlGraph extends JPanel implements TableModelListener
public Vector<Object> loadTransacationsDropDown(Object object) {
System.out.println(object);
Vector<Object> allTransacions = new Vector();;
// System.out.println(object);
Vector<Object> allTransacions = new Vector();
;
int numRows = table.getRowCount();
int numCols = table.getColumnCount();
javax.swing.table.TableModel model = table.getModel();
for (int i = 0; i < numRows; i++) {
for (int j = 0; j < numCols; j++) {
for (int j = 2; j < numCols; j++) {
if (table.getValueAt(i, j) != null && !allTransacions.contains(table.getValueAt(i, j)) && table.getValueAt(i, 0).equals(object)) {
if (table.getValueAt(i, j) != null && !allTransacions.contains(table.getValueAt(i, j))
&& table.getValueAt(i, 0).equals(object)) {
allTransacions.add(table.getValueAt(i, j));
}
}
System.out.println();
// System.out.println();
}
return allTransacions;
}
public Vector<Object> loadDevicesDropDown() {
Vector<Object> allDevices = new Vector();;
Vector<Object> allDevices = new Vector();
;
int numRows = table.getRowCount();
//int numCols = table.getColumnCount();
// int numCols = table.getColumnCount();
javax.swing.table.TableModel model = table.getModel();
for (int i = 0; i < numRows; i++) {
if (table.getValueAt(i, 0) != null && !allDevices.contains(table.getValueAt(i, 0))) {
allDevices.add(table.getValueAt(i, 0));
if (table.getValueAt(i, 0) != null && !allDevices.contains(table.getValueAt(i, 0))) {
allDevices.add(table.getValueAt(i, 0));
}
System.out.println();
// System.out.println();
}
return allDevices;
}
public JTable getTable() {
return table;
}
}
/*
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment