|
|
@ -4,48 +4,75 @@ import java.util.function.Consumer; |
|
|
|
|
|
|
|
public class SimplePriorityQueue<T extends Ticket> implements IPriorityQueue<T> { |
|
|
|
|
|
|
|
private T[] tickets; |
|
|
|
|
|
|
|
|
|
|
|
public SimplePriorityQueue() { |
|
|
|
tickets = (T[]) java.lang.reflect.Array.newInstance(Ticket.class, 10); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Nimmt t in die Queue auf, sofern t != null und t noch nicht enthalten und
|
|
|
|
// die Priorität >= 0 ist. Ist t bereits enthalten, wird es nicht erneut
|
|
|
|
// aufgenommen, aber die Priorität des bestehenden Tickets durch die Priorität
|
|
|
|
// von t ersetzt. Rückgabe: False, wenn t == null, true sonst
|
|
|
|
@Override |
|
|
|
public boolean add(T t) { |
|
|
|
// TODO Auto-generated method stub
|
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// Entnimmt das Ticket mit der größten Gesamtpriorität (gemäß Implementierung
|
|
|
|
// von IPDetermination. Falls zwei Tickets die gleiche Gesamtpriorität
|
|
|
|
// aufweisen, wird das Ticket gewählt, dessen BeginOfTicket-Datum kleiner ist
|
|
|
|
// (das ältere Ticket). Bei den restlichen Tickets wird das Alter mit der
|
|
|
|
// Methode incrementAge() erhöht (Siehe Ticket im Paket testat_g11)
|
|
|
|
@Override |
|
|
|
public T poll() { |
|
|
|
// TODO Auto-generated method stub
|
|
|
|
return null; |
|
|
|
} |
|
|
|
|
|
|
|
// True: Ticket t ist enthalten, false sonst
|
|
|
|
@Override |
|
|
|
public boolean contains(T t) { |
|
|
|
// TODO Auto-generated method stub
|
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
// True: Ticket t wurde entfernt, false sonst. Der Status des entfernten
|
|
|
|
// Tickets wird auf TicketStatus.FINISHED gesetzt
|
|
|
|
@Override |
|
|
|
public boolean remove(T t) { |
|
|
|
// TODO Auto-generated method stub
|
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
// Liefert die Gesamtpriorität (IPDetermination) von t bzw. -1 falls t nicht
|
|
|
|
// enthalten ist
|
|
|
|
@Override |
|
|
|
public int getTotalPriority(T t) { |
|
|
|
// TODO Auto-generated method stub
|
|
|
|
return 0; |
|
|
|
} |
|
|
|
|
|
|
|
// Setzt die Priorität von t auf newPriority. Rückgabe wie getPriority()
|
|
|
|
@Override |
|
|
|
public int setPriority(T t, int newPriority) { |
|
|
|
// TODO Auto-generated method stub
|
|
|
|
return 0; |
|
|
|
} |
|
|
|
|
|
|
|
// Anzahl der Elemente in der Queue
|
|
|
|
@Override |
|
|
|
public int size() { |
|
|
|
// TODO Auto-generated method stub
|
|
|
|
return 0; |
|
|
|
} |
|
|
|
|
|
|
|
// Wendet die Methode action.accept(…) auf alle Tickets an, die in der Queue
|
|
|
|
// enthalten sind
|
|
|
|
@Override |
|
|
|
public void forAll(Consumer<T> action) { |
|
|
|
// TODO Auto-generated method stub
|
|
|
|