Combine all versions into a single tree

This commit is contained in:
Jonas Herzig
2018-02-10 23:35:57 +01:00
parent ec50efec10
commit 748b9da443
95 changed files with 2731 additions and 644 deletions

View File

@@ -6,14 +6,34 @@ import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
import java.util.concurrent.PriorityBlockingQueue;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.TimeUnit;
public class JailingQueue<T> extends PriorityBlockingQueue<T> {
private final PriorityBlockingQueue<T> delegate;
private final Set<Thread> jailed = new HashSet<Thread>();
//#if MC>=10904
import java.util.concurrent.PriorityBlockingQueue;
//#else
//$$ import java.util.AbstractQueue;
//#endif
public class JailingQueue<T>
//#if MC>=10904
extends PriorityBlockingQueue<T>
//#else
//$$ extends AbstractQueue<T> implements BlockingQueue<T>
//#endif
{
//#if MC>=10904
private final PriorityBlockingQueue<T> delegate;
//#else
//$$ private final BlockingQueue<T> delegate;
//#endif
private final Set<Thread> jailed = new HashSet<>();
//#if MC>=10904
public JailingQueue(PriorityBlockingQueue<T> delegate) {
//#else
//$$ public JailingQueue(BlockingQueue<T> delegate) {
//#endif
this.delegate = delegate;
}
@@ -62,13 +82,21 @@ public class JailingQueue<T> extends PriorityBlockingQueue<T> {
}
@Override
public void put(T t) {
public void put(T t)
//#if MC<10904
//$$ throws InterruptedException
//#endif
{
tryAccess();
delegate.put(t);
}
@Override
public boolean offer(T t, long timeout, TimeUnit unit) {
public boolean offer(T t, long timeout, TimeUnit unit)
//#if MC<10904
//$$ throws InterruptedException
//#endif
{
tryAccess();
return delegate.offer(t, timeout, unit);
}