home *** CD-ROM | disk | FTP | other *** search
- import java.util.Date;
- import java.util.Hashtable;
- import java.util.Vector;
-
- public class JDPJobQueue {
- JDPJobQueueMgr manager;
- Hashtable info;
- Vector queue;
-
- public JDPJobQueue(JDPJobQueueMgr var1, String var2) {
- this.manager = var1;
- this.info = new Hashtable();
- this.queue = new Vector();
- this.setJobQueueName(var2);
- this.setQueueHeld(false);
- }
-
- String getJobQueueName() {
- return (String)this.info.get("JobQueueName");
- }
-
- void setJobQueueName(String var1) {
- this.info.put("JobQueueName", var1);
- }
-
- String getJobQueueDesc() {
- return (String)this.info.get("JobQueueDesc");
- }
-
- void setJobQueueDesc(String var1) {
- this.info.put("JobQueueDesc", var1);
- }
-
- String getSubsystem() {
- return (String)this.info.get("Subsystem");
- }
-
- void setSubsystem(String var1) {
- this.info.put("Subsystem", var1);
- }
-
- boolean getQueueHeld() {
- return (Boolean)this.info.get("QueueHeld");
- }
-
- void setQueueHeld(boolean var1) {
- this.info.put("QueueHeld", new Boolean(var1));
- this.manager.reOrderQueue();
- }
-
- void submitJob(JDPJob var1) {
- var1.setJobQueue(this.getJobQueueName());
- if (var1.getQueuedDate() == null) {
- Date var2 = new Date();
- long var3 = var2.getTime();
- var2.setHours(0);
- var2.setMinutes(0);
- var2.setSeconds(0);
- var3 -= var2.getTime();
- var1.setQueuedDate(var2);
- var1.setQueuedTime(var3);
- }
-
- if (var1.getJobStatus() != 2 && var1.getJobStatus() != 3) {
- var1.setJobStatus(2);
- }
-
- this.queue.addElement(var1);
- this.manager.reOrderQueue();
- }
-
- void removeJob(JDPJob var1) {
- var1.setJobQueue("");
- if (var1.getJobStatus() != 2 && var1.getJobStatus() != 3) {
- var1.setJobStatus(1);
- }
-
- this.queue.removeElement(var1);
- this.manager.reOrderQueue();
- }
-
- public int getQueuedJobCount() {
- return this.queue.size();
- }
-
- boolean holdJob(int var1) {
- JDPJob var2 = this.getJob(var1);
- if (var2 != null && var2.setJobStatus(3)) {
- this.manager.reOrderQueue();
- return true;
- } else {
- return false;
- }
- }
-
- boolean releaseJob(int var1) {
- JDPJob var2 = this.getJob(var1);
- if (var2 != null && var2.setJobStatus(2)) {
- this.manager.reOrderQueue();
- return true;
- } else {
- return false;
- }
- }
-
- JDPJob getJob(int var1) {
- for(int var2 = 0; var2 < this.queue.size(); ++var2) {
- JDPJob var3 = (JDPJob)this.queue.elementAt(var2);
- if (var3.getJobNumber() == var1) {
- return var3;
- }
- }
-
- return null;
- }
-
- JDPJob getNextJob() {
- if (this.queue.size() == 0) {
- return null;
- } else {
- JDPJob var1 = (JDPJob)this.queue.elementAt(0);
- return var1.getJobStatus() == 2 ? var1 : null;
- }
- }
-
- boolean reOrderQueue() {
- Vector var1 = new Vector();
- boolean var2 = false;
-
- for(int var3 = 0; var3 < 2; ++var3) {
- if (var3 == 1) {
- var2 = true;
- }
-
- for(int var4 = 10; var4 >= 1; --var4) {
- for(int var5 = 0; var5 < this.queue.size(); ++var5) {
- JDPJob var6 = (JDPJob)this.queue.elementAt(var5);
- if (var6.getJobQueuePriority() == var4 && var1.indexOf(var6) < 0 && (var6.getJobStatus() == 2 && !var2 || var6.getJobStatus() == 3 && var2)) {
- var1.addElement(var6);
- }
- }
- }
- }
-
- this.queue = var1;
- return true;
- }
- }
-