summaryrefslogtreecommitdiff
path: root/source/com/c2kernel/gui/tabs/ExecutionPane.java
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/ExecutionPane.java
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/ExecutionPane.java')
-rw-r--r--source/com/c2kernel/gui/tabs/ExecutionPane.java47
1 files changed, 29 insertions, 18 deletions
diff --git a/source/com/c2kernel/gui/tabs/ExecutionPane.java b/source/com/c2kernel/gui/tabs/ExecutionPane.java
index 0685fa9..96b1129 100644
--- a/source/com/c2kernel/gui/tabs/ExecutionPane.java
+++ b/source/com/c2kernel/gui/tabs/ExecutionPane.java
@@ -7,22 +7,25 @@ import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.util.ArrayList;
import java.util.Iterator;
+
import javax.swing.Box;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
-import com.c2kernel.entity.C2KLocalObject;
+
import com.c2kernel.entity.agent.Job;
import com.c2kernel.entity.proxy.EntityProxyObserver;
import com.c2kernel.entity.proxy.ItemProxy;
+import com.c2kernel.entity.proxy.MemberSubscription;
import com.c2kernel.gui.MainFrame;
import com.c2kernel.gui.tabs.execution.ActivityItem;
import com.c2kernel.gui.tabs.execution.ActivityViewer;
+import com.c2kernel.lifecycle.instance.Workflow;
import com.c2kernel.persistency.ClusterStorage;
import com.c2kernel.utils.Language;
import com.c2kernel.utils.Logger;
-public class ExecutionPane extends EntityTabPane implements EntityProxyObserver {
+public class ExecutionPane extends EntityTabPane implements EntityProxyObserver<Workflow> {
ArrayList<Job> jobList = null;
Object jobLock = new Object();
@@ -47,7 +50,7 @@ public class ExecutionPane extends EntityTabPane implements EntityProxyObserver
c.anchor = GridBagConstraints.CENTER;
c.fill = GridBagConstraints.BOTH;
gridbag.setConstraints(view, c);
-
+
add(view);
// create activity selection box
activityBox.add(new JLabel(Language.translate("Select Activity") + ": "));
@@ -55,16 +58,18 @@ public class ExecutionPane extends EntityTabPane implements EntityProxyObserver
activitySelector.setEditable(false);
activityBox.add(activitySelector);
activitySelector.addItemListener(new ItemListener() {
- public void itemStateChanged(ItemEvent selection) {
+ @Override
+ public void itemStateChanged(ItemEvent selection) {
if (selection.getStateChange() == ItemEvent.SELECTED) {
selectActivity(selection.getItem());
}
}
});
}
- public void run() {
+ @Override
+ public void run() {
Thread.currentThread().setName("Execution Pane Builder");
- sourceEntity.getEntity().subscribe(this, ClusterStorage.LIFECYCLE, false);
+ sourceEntity.getEntity().subscribe(new MemberSubscription<Workflow>(this, ClusterStorage.LIFECYCLE, false));
loadJobList();
init = true;
if (autoRun != null) {
@@ -80,8 +85,7 @@ public class ExecutionPane extends EntityTabPane implements EntityProxyObserver
try {
jobList = ((ItemProxy)sourceEntity.getEntity()).getJobList(MainFrame.userAgent);
activitySelector.addItem(emptyAct);
- for (Iterator e = jobList.iterator(); e.hasNext();) {
- Job thisJob = (Job)e.next();
+ for (Job thisJob : jobList) {
Logger.msg(7, "ExecutionPane - loadJobList " + thisJob.isOutcomeUsed() + "|" + thisJob.getSchemaType() + "|" + thisJob.getSchemaVersion() + "|");
ActivityItem newAct = new ActivityItem(thisJob);
if (activities.contains(newAct)) {
@@ -117,7 +121,8 @@ public class ExecutionPane extends EntityTabPane implements EntityProxyObserver
revalidate();
updateUI();
}
- public void reload() {
+ @Override
+ public void reload() {
loadJobList();
}
private void addActivity(ActivityItem newAct) {
@@ -145,10 +150,10 @@ public class ExecutionPane extends EntityTabPane implements EntityProxyObserver
updateUI();
currentActView.init();
}
- public void runCommand(String command) {
+ @Override
+ public void runCommand(String command) {
if (init) {
- for (Iterator iter = activities.iterator(); iter.hasNext();) {
- ActivityItem act = (ActivityItem)iter.next();
+ for (ActivityItem act : activities) {
if (act.name.equals(command)) {
selectActivity(act);
}
@@ -159,7 +164,8 @@ public class ExecutionPane extends EntityTabPane implements EntityProxyObserver
/**
* when the workflow changes, reload this pane.
*/
- public void add(C2KLocalObject contents) {
+ @Override
+ public void add(Workflow contents) {
if (!formIsActive)
reload();
else { // look to see if this form is now invalid
@@ -170,13 +176,12 @@ public class ExecutionPane extends EntityTabPane implements EntityProxyObserver
return;
}
// compare to currently editing jobs
- ArrayList currentActJobs = currentActView.getActivity().getJobs();
+ ArrayList<?> currentActJobs = currentActView.getActivity().getJobs();
boolean allValid = true;
- for (Iterator iter = currentActJobs.iterator(); iter.hasNext() && allValid;) {
+ for (Iterator<?> iter = currentActJobs.iterator(); iter.hasNext() && allValid;) {
Job thisJob = (Job)iter.next();
boolean stillValid = false;
- for (Iterator iter2 = jobList.iterator(); iter2.hasNext();) {
- Job newJob = (Job)iter2.next();
+ for (Job newJob : jobList) {
if (thisJob.equals(newJob)) {
stillValid = true;
break;
@@ -192,6 +197,12 @@ public class ExecutionPane extends EntityTabPane implements EntityProxyObserver
/**
* Not pertinent for this one
*/
- public void remove(String id) {
+ @Override
+ public void remove(String id) {
}
+ @Override
+ public void control(String control, String msg) {
+ // TODO Auto-generated method stub
+
+ }
}