Merge remote-tracking branch 'origin/jetty-9.2.x' into jetty-9.3.x
This commit is contained in:
commit
34d465555b
|
@ -43,4 +43,9 @@ package org.eclipse.jetty.continuation;
|
|||
* </p>
|
||||
*/
|
||||
public class ContinuationThrowable extends Error
|
||||
{}
|
||||
{
|
||||
public ContinuationThrowable()
|
||||
{
|
||||
super(null, null, false, false);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,11 +34,7 @@ import org.eclipse.jetty.util.log.Logger;
|
|||
public class BlockingCallback implements Callback.NonBlocking
|
||||
{
|
||||
private static final Logger LOG = Log.getLogger(BlockingCallback.class);
|
||||
private static Throwable SUCCEEDED = new Throwable()
|
||||
{
|
||||
@Override
|
||||
public String toString() { return "SUCCEEDED"; }
|
||||
};
|
||||
private static Throwable SUCCEEDED = new ConstantThrowable("SUCCEEDED");
|
||||
|
||||
private final CountDownLatch _latch = new CountDownLatch(1);
|
||||
private final AtomicReference<Throwable> _state = new AtomicReference<>();
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
//
|
||||
// ========================================================================
|
||||
// Copyright (c) 1995-2016 Mort Bay Consulting Pty. Ltd.
|
||||
// ------------------------------------------------------------------------
|
||||
// All rights reserved. This program and the accompanying materials
|
||||
// are made available under the terms of the Eclipse Public License v1.0
|
||||
// and Apache License v2.0 which accompanies this distribution.
|
||||
//
|
||||
// The Eclipse Public License is available at
|
||||
// http://www.eclipse.org/legal/epl-v10.html
|
||||
//
|
||||
// The Apache License v2.0 is available at
|
||||
// http://www.opensource.org/licenses/apache2.0.php
|
||||
//
|
||||
// You may elect to redistribute this code under either of these licenses.
|
||||
// ========================================================================
|
||||
//
|
||||
|
||||
package org.eclipse.jetty.util;
|
||||
|
||||
/**
|
||||
* A {@link Throwable} that may be used in static contexts. It uses Java 7
|
||||
* constructor that prevents setting stackTrace inside exception object.
|
||||
*/
|
||||
public class ConstantThrowable extends Throwable {
|
||||
|
||||
private String name;
|
||||
|
||||
public ConstantThrowable() {
|
||||
this(null);
|
||||
}
|
||||
|
||||
public ConstantThrowable(String name) {
|
||||
super(null, null, false, false);
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return name;
|
||||
}
|
||||
|
||||
}
|
|
@ -29,7 +29,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
|
|||
|
||||
public class FutureCallback implements Future<Void>,Callback
|
||||
{
|
||||
private static Throwable COMPLETED=new Throwable();
|
||||
private static Throwable COMPLETED=new ConstantThrowable();
|
||||
private final AtomicBoolean _done=new AtomicBoolean(false);
|
||||
private final CountDownLatch _latch=new CountDownLatch(1);
|
||||
private Throwable _cause;
|
||||
|
|
|
@ -29,7 +29,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
|
|||
|
||||
public class FuturePromise<C> implements Future<C>,Promise<C>
|
||||
{
|
||||
private static Throwable COMPLETED=new Throwable();
|
||||
private static Throwable COMPLETED=new ConstantThrowable();
|
||||
private final AtomicBoolean _done=new AtomicBoolean(false);
|
||||
private final CountDownLatch _latch=new CountDownLatch(1);
|
||||
private Throwable _cause;
|
||||
|
|
|
@ -49,30 +49,11 @@ import org.eclipse.jetty.util.log.Logger;
|
|||
public class SharedBlockingCallback
|
||||
{
|
||||
static final Logger LOG = Log.getLogger(SharedBlockingCallback.class);
|
||||
private static Throwable IDLE = new Throwable()
|
||||
{
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return "IDLE";
|
||||
}
|
||||
};
|
||||
private static Throwable SUCCEEDED = new Throwable()
|
||||
{
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return "SUCCEEDED";
|
||||
}
|
||||
};
|
||||
private static Throwable FAILED = new Throwable()
|
||||
{
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
return "FAILED";
|
||||
}
|
||||
};
|
||||
|
||||
private static Throwable IDLE = new ConstantThrowable("IDLE");
|
||||
private static Throwable SUCCEEDED = new ConstantThrowable("SUCCEEDED");
|
||||
|
||||
private static Throwable FAILED = new ConstantThrowable("FAILED");
|
||||
|
||||
private final ReentrantLock _lock = new ReentrantLock();
|
||||
private final Condition _idle = _lock.newCondition();
|
||||
|
|
Loading…
Reference in New Issue