package codeine.utils;
import java.util.LinkedList;
public class LimitedQueue<E> extends LinkedList<E>
{
private static final long serialVersionUID = 1L;
private int limit;
public LimitedQueue(int limit)
{
this.limit = limit;
if (limit < 1)
{
throw new IllegalArgumentException("Queue limit must be greater than 0");
}
}
@Override
public boolean add(E o)
{
super.add(o);
while (size() > limit)
{
super.remove();
}
return true;
}
}