Skip to content
Snippets Groups Projects
Commit c7d32ade authored by Letitia Li's avatar Letitia Li
Browse files

Set order of tasks in task trace

parent d056c666
No related branches found
No related tags found
1 merge request!71Security generation fixes and Security testing model
......@@ -1415,13 +1415,17 @@ public class JFrameInteractiveSimulation extends JFrame implements ActionListene
GraphicLib.centerOnParent(jdstmlc);
jdstmlc.setVisible(true);
HashMap<String, ArrayList<String>> deviceTaskMap = new HashMap<String, ArrayList<String>>();
for (HwNode node : tmap.getTMLArchitecture().getHwNodes()){
deviceTaskMap.put(node.getName(), new ArrayList<String>());
}
for (TMLTask task: tmap.getTMLModeling().getTasks()){
LinkedHashMap<String, ArrayList<String>> deviceTaskMap = new LinkedHashMap<String, ArrayList<String>>();
for (String name: tmlComponentsToValidate){
TMLTask task = tmap.getTMLModeling().getTMLTaskByName(name);
if (task==null){
continue;
}
HwNode node = tmap.getHwNodeOf(task);
if (node!=null && tmlComponentsToValidate.contains(task.getName())){
if (node!=null) {
if (!deviceTaskMap.containsKey(node.getName())){
deviceTaskMap.put(node.getName(), new ArrayList<String>());
}
deviceTaskMap.get(node.getName()).add(task.getName());
}
}
......
......@@ -57,6 +57,7 @@ import java.util.Hashtable;
import java.util.Vector;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
/**
* Class JSimulationSDPanel
......@@ -109,7 +110,7 @@ public class JSimulationTMLPanel extends JPanel implements MouseMotionListener,
// Or the list is described in the trace (header information)
private Vector <String> entityNames;
private HashMap<String, ArrayList<String>> deviceTaskMap = new HashMap<String, ArrayList<String>>();
private LinkedHashMap<String, ArrayList<String>> deviceTaskMap = new LinkedHashMap<String, ArrayList<String>>();
private final int NO_MODE = 0;
private final int FILE_MODE = 1;
......@@ -179,7 +180,7 @@ public class JSimulationTMLPanel extends JPanel implements MouseMotionListener,
this.repaint();
}
public void setDevices(HashMap<String, ArrayList<String>> map){
public void setDevices(LinkedHashMap<String, ArrayList<String>> map){
deviceTaskMap = map;
for (String device: deviceTaskMap.keySet()){
for (String task: deviceTaskMap.get(device)){
......@@ -1067,32 +1068,14 @@ public class JSimulationTMLPanel extends JPanel implements MouseMotionListener,
}
//TraceManager.addDev("1");
// Time
tmp = extract(trans, "time");
if (tmp == null) {
return;
}
//TraceManager.addDev("2 tmp=" + tmp);
try {
//index0 = tmp.indexOf('.');
//if (index0 == -1) {
//TraceManager.addDev("Invalid time value");
// return;
//}
//tmp1 = tmp.substring(0, index0);
//tmp2 = Conversion.removeStartingCharacters(tmp.substring(index0+1, tmp.length()), "0");
//TraceManager.addDev("2 tmp1=" + tmp1 + " tmp2=" + tmp2);
//value1 = Integer.decode(tmp1);
// if (tmp2.length() == 0) {
// value2 = 0;
// } else {
// value2 = Integer.decode(tmp2);
//}
// value = ((long)value1)*1000000000+value2;
gt.startingTime = Long.valueOf(tmp);
gt.finishTime = Long.valueOf(tmp);
} catch (Exception e) {
......@@ -1100,17 +1083,15 @@ public class JSimulationTMLPanel extends JPanel implements MouseMotionListener,
return;
}
//TraceManager.addDev("3");
// Name of the block
tmp = extract(trans, "block");
if (tmp == null) {
return;
}
//TraceManager.addDev("4");
//addEntityNameIfApplicable(tmp);
//Show traces of only the selected tasks and ignore transactions if the task is missing
gt.entityName = tmp;
if (!entityNames.contains(tmp)){
return;
......
......@@ -51,6 +51,7 @@ import java.awt.event.ActionListener;
import java.util.LinkedList;
import java.util.List;
import java.util.Vector;
import java.util.Collections;
/**
......@@ -76,6 +77,9 @@ public class JDialogSelectTasks extends JDialogBase implements ActionListener, L
private JButton addOneValidated;
private JButton addOneIgnored;
private JButton allIgnored;
private JButton shiftUp;
private JButton shiftDown;
/**
* Creates new form
......@@ -169,7 +173,7 @@ public class JDialogSelectTasks extends JDialogBase implements ActionListener, L
// ignored list
panel1 = new JPanel();
panel1.setLayout(new BorderLayout());
panel1.setBorder(new javax.swing.border.TitledBorder("Ignored components"));
panel1.setBorder(new javax.swing.border.TitledBorder("Ignored Tasks"));
listIgnored = new JList<String>(ign);
//listIgnored.setPreferredSize(new Dimension(200, 250));
listIgnored.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
......@@ -218,10 +222,28 @@ public class JDialogSelectTasks extends JDialogBase implements ActionListener, L
c.add(panel3, c2);
shiftUp = new JButton(IconManager.imgic78);
shiftUp.addActionListener(this);
shiftUp.setPreferredSize(new Dimension(50, 25));
shiftUp.setActionCommand("shiftUp");
panel3.add(shiftUp, c1);
c.add(panel3, c2);
shiftDown = new JButton(IconManager.imgic79);
shiftDown.addActionListener(this);
shiftDown.setPreferredSize(new Dimension(50, 25));
shiftDown.setActionCommand("shiftDown");
panel3.add(shiftDown, c1);
c.add(panel3, c2);
// validated list
panel2 = new JPanel();
panel2.setLayout(new BorderLayout());
panel2.setBorder(new javax.swing.border.TitledBorder("Used components"));
panel2.setBorder(new javax.swing.border.TitledBorder("Displayed Tasks"));
listValidated = new JList<String>(val);
//listValidated.setPreferredSize(new Dimension(200, 250));
listValidated.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
......@@ -259,9 +281,31 @@ public class JDialogSelectTasks extends JDialogBase implements ActionListener, L
allValidated();
} else if (command.equals("allIgnored")) {
allIgnored();
} else if (command.equals("shiftUp")) {
shiftUp();
} else if (command.equals("shiftDown")) {
shiftDown();
}
}
private void shiftUp(){
int index = listValidated.getSelectedIndices()[0];
Collections.swap(val, index, index-1);
listValidated.setListData(val);
setButtons();
}
private void shiftDown(){
int index = listValidated.getSelectedIndices()[0];
Collections.swap(val, index, index+1);
listValidated.setListData(val);
setButtons();
}
private void addOneIgnored() {
int[] list = listValidated.getSelectedIndices();
......@@ -357,6 +401,20 @@ public class JDialogSelectTasks extends JDialogBase implements ActionListener, L
allIgnored.setEnabled(true);
closeButton.setEnabled(true);
}
if (i2 < 1){
shiftUp.setEnabled(false);
}
else {
shiftUp.setEnabled(true);
}
if (i2==val.size()-1 || i2==-1){
shiftDown.setEnabled(false);
}
else {
shiftDown.setEnabled(true);
}
}
......
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