diff options
| author | Paul Buetow <paul@buetow.org> | 2008-05-17 21:50:44 +0000 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2008-05-17 21:50:44 +0000 |
| commit | 8602c18db94281afd5bc0ceb5930a3d99fbe7a38 (patch) | |
| tree | 6883d776ac6d2ead8df8711ed6dac4388680d181 /sources/core/VSTask.java | |
| parent | dbb780b7295c0df60269ee6f3c85c3056d6262b8 (diff) | |
Manual crash/recover implemented.
Diffstat (limited to 'sources/core/VSTask.java')
| -rw-r--r-- | sources/core/VSTask.java | 28 |
1 files changed, 23 insertions, 5 deletions
diff --git a/sources/core/VSTask.java b/sources/core/VSTask.java index d481300..4fe7b37 100644 --- a/sources/core/VSTask.java +++ b/sources/core/VSTask.java @@ -1,12 +1,11 @@ package core; -import prefs.VSPrefs; import events.*; +import prefs.VSPrefs; import protocols.VSProtocol; import simulator.*; -public class VSTask { - //public final static int RUN_ON_CLIENT_START = 1; +public class VSTask implements Comparable { private long taskTime; private VSEvent event; private VSProcess process; @@ -32,6 +31,10 @@ public class VSTask { return event instanceof VSMessage; } + public boolean isProcessRecoverEvent() { + return event instanceof events.implementations.ProcessRecoverEvent; + } + public boolean isProtocol(VSProtocol protocol) { if (event instanceof VSProtocol) return ((VSProtocol) event).equals(protocol); @@ -51,8 +54,9 @@ public class VSTask { } public void run() { - if (process.isCrashed()) - return; + /* Process crash allready checked in VSTaskManager */ + //if (process.isCrashed() && !(event instanceof ProcessRecoverEvent)) + // return; if (event instanceof VSMessage) { onMessageRecv(); @@ -140,5 +144,19 @@ public class VSTask { return descr; } + + public int compareTo(Object object) { + if (object instanceof VSTask) { + final VSTask task = (VSTask) object; + + if (taskTime < task.getTaskTime()) + return -1; + + else if (taskTime > task.getTaskTime()) + return 1; + } + + return 0; + } } |
