rendered paste body// Decompiled by Jad v1.5.8g. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://www.kpdus.com/jad.html
// Decompiler options: packimports(3) deadcode ansi
// Source File Name: BrokenPrioritySequence.java
public class BrokenPrioritySequence
implements TaskList
{
public BrokenPrioritySequence()
{
numTasks = 0;
tasks = new Task[1];
}
public void addTask(Task task)
{
if(numTasks == tasks.length)
{
Task atask[] = new Task[tasks.length * 2];
for(int j = 0; j < tasks.length; j++)
atask[j] = tasks[j];
tasks = atask;
}
if(task.deadline() == null)
{
tasks[numTasks] = task;
numTasks++;
return;
}
int i = numTasks - 1;
if(task.deadline() != null)
for(; i >= 0 && (tasks[i].deadline() == null || task.deadline().compareTo(tasks[i].deadline()) == 2 || task.deadline().compareTo(tasks[i].deadline()) == -1); i--);
for(int k = numTasks - 1; k >= i; k--)
tasks[k + 1] = tasks[k];
tasks[i] = task;
numTasks++;
}
public Task[] allTasks()
{
Task atask[] = new Task[numTasks];
for(int i = 0; i < numTasks; i++)
atask[i] = tasks[i];
return atask;
}
public void initWithTasks(Task atask[])
{
tasks = new Task[atask.length];
numTasks = atask.length;
for(int i = 0; i < atask.length; i++)
tasks[i] = atask[i];
}
public boolean isEmpty()
{
return numTasks == 0;
}
public Task nextTask()
{
if(numTasks == 0)
return null;
else
return tasks[0];
}
public Task removeNextTask()
{
Task task = nextTask();
for(int i = 1; i < numTasks; i++)
tasks[i - 1] = tasks[i];
numTasks--;
return task;
}
public int taskCount()
{
return tasks.length;
}
private Task tasks[];
private int numTasks;
}