summaryrefslogtreecommitdiff
path: root/source/com/c2kernel/gui/tabs/execution
diff options
context:
space:
mode:
authorabranson <andrew.branson@cern.ch>2011-08-04 00:42:34 +0200
committerabranson <andrew.branson@cern.ch>2011-08-04 00:42:34 +0200
commit0ec8481c10cd8277d84c7c1a785483a0a739e5a0 (patch)
tree5f6e5d9ae75193e67e6f3b3dfa488960c5cde1d5 /source/com/c2kernel/gui/tabs/execution
parent036cbdba66f804743c4c838ed598d6972c4b3e17 (diff)
More code cleanup:
Refactored Entity Proxy Subscription to handle generics better Rewrote RemoteMap to use TreeMap instead of the internal array for order. It now sorts its keys by number if they parse, else as strings. Removed a no-longer-in-progress outcome form class
Diffstat (limited to 'source/com/c2kernel/gui/tabs/execution')
-rw-r--r--source/com/c2kernel/gui/tabs/execution/ActivityItem.java13
-rw-r--r--source/com/c2kernel/gui/tabs/execution/ActivityViewer.java76
-rw-r--r--[-rwxr-xr-x]source/com/c2kernel/gui/tabs/execution/DefaultExecutor.java8
-rw-r--r--[-rwxr-xr-x]source/com/c2kernel/gui/tabs/execution/Executor.java9
-rw-r--r--[-rwxr-xr-x]source/com/c2kernel/gui/tabs/execution/RequestButton.java3
5 files changed, 60 insertions, 49 deletions
diff --git a/source/com/c2kernel/gui/tabs/execution/ActivityItem.java b/source/com/c2kernel/gui/tabs/execution/ActivityItem.java
index ba5e76b..6a8f2f7 100644
--- a/source/com/c2kernel/gui/tabs/execution/ActivityItem.java
+++ b/source/com/c2kernel/gui/tabs/execution/ActivityItem.java
@@ -9,7 +9,7 @@ public class ActivityItem {
public int state;
public String name;
ArrayList<Job> jobs = new ArrayList<Job>();
-
+
public ActivityItem() {
stepPath = "";
state = -1;
@@ -27,7 +27,7 @@ public class ActivityItem {
jobs.add(newJob);
}
- public ArrayList getJobs() {
+ public ArrayList<Job> getJobs() {
return jobs;
}
@@ -35,16 +35,19 @@ public class ActivityItem {
return stepPath;
}
- public String toString() {
+ @Override
+ public String toString() {
return name+(state>-1?" ("+States.getStateName(state)+")":"");
}
- public boolean equals(Object other) {
+ @Override
+ public boolean equals(Object other) {
if (other instanceof ActivityItem)
return hashCode() == ((ActivityItem)other).hashCode();
return false;
}
-
+
+ @Override
public int hashCode() {
return stepPath.hashCode();
}
diff --git a/source/com/c2kernel/gui/tabs/execution/ActivityViewer.java b/source/com/c2kernel/gui/tabs/execution/ActivityViewer.java
index b0417f4..b6ef7f8 100644
--- a/source/com/c2kernel/gui/tabs/execution/ActivityViewer.java
+++ b/source/com/c2kernel/gui/tabs/execution/ActivityViewer.java
@@ -8,7 +8,6 @@ import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.util.ArrayList;
-import java.util.Iterator;
import javax.swing.Box;
import javax.swing.JButton;
@@ -34,7 +33,7 @@ import com.c2kernel.utils.LocalObjectLoader;
import com.c2kernel.utils.Logger;
public class ActivityViewer extends JPanel implements Runnable {
-
+
ItemProxy item;
Box outcomeButtons = Box.createHorizontalBox();
OutcomeHandler outcomePanel;
@@ -43,8 +42,8 @@ public class ActivityViewer extends JPanel implements Runnable {
ArrayList<RequestButton> requestButtons = new ArrayList<RequestButton>();
JLabel noOutcome = new JLabel(Language.translate("No outcome data is required for this activity"));
ExecutionPane parent;
- JLabel status;
- JComboBox executors;
+ JLabel status;
+ JComboBox<?> executors;
JButton saveButton = new JButton("Save");
JButton loadButton = new JButton("Load");
GridBagLayout gridbag = new GridBagLayout();
@@ -53,10 +52,12 @@ public class ActivityViewer extends JPanel implements Runnable {
static {
chooser.addChoosableFileFilter(
new javax.swing.filechooser.FileFilter() {
- public String getDescription() {
+ @Override
+ public String getDescription() {
return "XML Files";
}
- public boolean accept(File f) {
+ @Override
+ public boolean accept(File f) {
if (f.isDirectory() || (f.isFile() && f.getName().endsWith(".xml"))) {
return true;
}
@@ -64,13 +65,13 @@ public class ActivityViewer extends JPanel implements Runnable {
}
});
}
-
+
public ActivityViewer (ActivityItem newAct, ItemProxy item, ExecutionPane parent){
thisAct = newAct;
this.item = item;
this.parent = parent;
setLayout(gridbag);
-
+
GridBagConstraints c = new GridBagConstraints();
c.gridx=0; c.gridy=1; c.weightx=1.0; c.weighty=0.0;
c.insets = new Insets(5,5,5,5);
@@ -82,17 +83,17 @@ public class ActivityViewer extends JPanel implements Runnable {
actTitle.setFont(EntityTabPane.titleFont);
gridbag.setConstraints(actTitle, c);
add(actTitle);
-
- Job firstJob = (Job)(thisAct.getJobs().get(0));
+
+ Job firstJob = (thisAct.getJobs().get(0));
// desc
String desc = firstJob.getDescription();
if (desc != null && desc.length() > 0) {
Box descBox = Box.createHorizontalBox();
-
+
String chopDesc = null;
if(desc.length() >= 40) chopDesc = desc.substring(0,40);
else chopDesc = desc;
-
+
descBox.add(new JLabel("Description: "+chopDesc));
if (desc.length()>chopDesc.length()) {
descBox.add(new JLabel(" ..."));
@@ -101,7 +102,8 @@ public class ActivityViewer extends JPanel implements Runnable {
descButton.setMargin(new Insets(0,0,0,0));
descButton.setActionCommand(desc);
descButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
+ @Override
+ public void actionPerformed(ActionEvent e) {
JTextArea descArea = new JTextArea(e.getActionCommand());
descArea.setLineWrap(true);
descArea.setWrapStyleWord(true);
@@ -118,8 +120,8 @@ public class ActivityViewer extends JPanel implements Runnable {
add(descBox);
}
-
-// agentid
+
+// agentid
String roleName = firstJob.getAgentRole();
if (roleName!= null && roleName.length()>0) {
c.gridy++;
@@ -127,12 +129,12 @@ public class ActivityViewer extends JPanel implements Runnable {
gridbag.setConstraints(role, c);
add(role);
}
-
+
c.gridy++;
c.anchor = GridBagConstraints.EAST;
gridbag.setConstraints(outcomeButtons, c);
add(outcomeButtons);
-
+
executors = MainFrame.getExecutionPlugins();
if (executors.getItemCount() > 1) {
c.gridx++;
@@ -142,12 +144,12 @@ public class ActivityViewer extends JPanel implements Runnable {
}
c.gridy++;
-
+
status = new JLabel(Language.translate("Waiting for request"));
status.setFont(EntityTabPane.titleFont);
gridbag.setConstraints(status, c);
add(status);
-
+
c.gridx++;
Box fileBox = Box.createHorizontalBox();
fileBox.add(saveButton); fileBox.add(Box.createHorizontalGlue()); fileBox.add(loadButton);
@@ -158,8 +160,8 @@ public class ActivityViewer extends JPanel implements Runnable {
c.gridx--;
c.gridwidth = 2;
boolean outcomeEmpty = true;
- for (Iterator e = thisAct.getJobs().iterator(); e.hasNext();) {
- Job thisJob = (Job)e.next();
+ for (Object name2 : thisAct.getJobs()) {
+ Job thisJob = (Job)name2;
RequestButton newButton = new RequestButton(thisJob, this);
requestButtons.add(newButton);
outcomeButtons.add(newButton);
@@ -191,7 +193,8 @@ public class ActivityViewer extends JPanel implements Runnable {
if (outcomePanel == null) newButton.setEnabled(false);
else {
saveButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
+ @Override
+ public void actionPerformed(ActionEvent e) {
String output;
try {
output = outcomePanel.getOutcome();
@@ -200,7 +203,7 @@ public class ActivityViewer extends JPanel implements Runnable {
File targetFile = chooser.getSelectedFile();
if (!(targetFile.getAbsolutePath().endsWith(".xml")))
targetFile = new File(targetFile.getAbsolutePath()+".xml");
-
+
Logger.msg(2, "ExecutionPane - Exporting outcome to file " + targetFile.getName());
FileStringUtility.string2File(targetFile, output);
}
@@ -211,14 +214,15 @@ public class ActivityViewer extends JPanel implements Runnable {
}
});
saveButton.setEnabled(true);
-
+
loadButton.addActionListener(new ActionListener() {
- public void actionPerformed(ActionEvent e) {
+ @Override
+ public void actionPerformed(ActionEvent e) {
try {
int returnVal = chooser.showOpenDialog(null);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File targetFile = chooser.getSelectedFile();
-
+
Logger.msg(2, "ViewpointPane.actionPerformed() - Reading outcome from file " + targetFile.getName());
String outcome = FileStringUtility.file2String(targetFile);
outcomePanel.setOutcome(outcome);
@@ -230,7 +234,7 @@ public class ActivityViewer extends JPanel implements Runnable {
}
}
});
- loadButton.setEnabled(true);
+ loadButton.setEnabled(true);
}
}
}
@@ -243,15 +247,15 @@ public class ActivityViewer extends JPanel implements Runnable {
add(outcomeView);
}
-
+
public void init() {
if (outcomePanel != null)
new Thread(outcomePanel).start();
}
-
+
public void execute(Job thisJob) {
try{
- if (thisJob.isOutcomeUsed() && thisJob.getSchemaType().length() > 0)
+ if (thisJob.isOutcomeUsed() && thisJob.getSchemaType().length() > 0)
thisJob.setOutcome(outcomePanel.getOutcome());
executingJob = thisJob;
new Thread(this).start();
@@ -260,11 +264,12 @@ public class ActivityViewer extends JPanel implements Runnable {
}
}
-
+
/**
* Submits the job to the database
*/
- public void run() {
+ @Override
+ public void run() {
Thread.currentThread().setName("Activity Execution");
enableAllButtons(false);
try {
@@ -277,15 +282,14 @@ public class ActivityViewer extends JPanel implements Runnable {
}
enableAllButtons(true);
}
-
+
private void enableAllButtons(boolean enabled) {
- for (Iterator iter = requestButtons.iterator(); iter.hasNext();) {
- RequestButton thisButton = (RequestButton)iter.next();
+ for (RequestButton thisButton : requestButtons) {
thisButton.setEnabled(enabled);
}
}
-
+
public ActivityItem getActivity() {
return thisAct;
}
diff --git a/source/com/c2kernel/gui/tabs/execution/DefaultExecutor.java b/source/com/c2kernel/gui/tabs/execution/DefaultExecutor.java
index ea05568..378cc2e 100755..100644
--- a/source/com/c2kernel/gui/tabs/execution/DefaultExecutor.java
+++ b/source/com/c2kernel/gui/tabs/execution/DefaultExecutor.java
@@ -16,18 +16,20 @@ import com.c2kernel.utils.Language;
**************************************************************************/
public class DefaultExecutor implements Executor {
-
+
public DefaultExecutor() {
super();
}
- public void execute(Job job, JLabel status) throws Exception {
+ @Override
+ public void execute(Job job, JLabel status) throws Exception {
status.setText(Language.translate("Requesting, please wait."));
MainFrame.userAgent.execute(job);
status.setText(Language.translate("Execution complete. Waiting for joblist update."));
}
- public String toString() {
+ @Override
+ public String toString() {
return "Normal";
}
}
diff --git a/source/com/c2kernel/gui/tabs/execution/Executor.java b/source/com/c2kernel/gui/tabs/execution/Executor.java
index dd185b4..6fbde17 100755..100644
--- a/source/com/c2kernel/gui/tabs/execution/Executor.java
+++ b/source/com/c2kernel/gui/tabs/execution/Executor.java
@@ -14,8 +14,9 @@ import com.c2kernel.entity.agent.Job;
**************************************************************************/
public interface Executor {
-
- public String toString();
-
- public void execute(Job job, JLabel status) throws Exception;
+
+ @Override
+ public String toString();
+
+ public void execute(Job job, JLabel status) throws Exception;
}
diff --git a/source/com/c2kernel/gui/tabs/execution/RequestButton.java b/source/com/c2kernel/gui/tabs/execution/RequestButton.java
index 0e11a7f..e1372a2 100755..100644
--- a/source/com/c2kernel/gui/tabs/execution/RequestButton.java
+++ b/source/com/c2kernel/gui/tabs/execution/RequestButton.java
@@ -27,7 +27,8 @@ import com.c2kernel.lifecycle.instance.stateMachine.Transitions;
addActionListener(this);
}
- public void actionPerformed(ActionEvent event) {
+ @Override
+ public void actionPerformed(ActionEvent event) {
parent.execute(myJob);
}
}