AsyncRestTemplate and FutureAdapter consistently throw ExecutionException
Issue: SPR-13413
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2014 the original author or authors.
|
* Copyright 2002-2015 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@@ -59,27 +59,27 @@ public abstract class FutureAdapter<T, S> implements Future<T> {
|
|||||||
* Returns the adaptee.
|
* Returns the adaptee.
|
||||||
*/
|
*/
|
||||||
protected Future<S> getAdaptee() {
|
protected Future<S> getAdaptee() {
|
||||||
return adaptee;
|
return this.adaptee;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean cancel(boolean mayInterruptIfRunning) {
|
public boolean cancel(boolean mayInterruptIfRunning) {
|
||||||
return adaptee.cancel(mayInterruptIfRunning);
|
return this.adaptee.cancel(mayInterruptIfRunning);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isCancelled() {
|
public boolean isCancelled() {
|
||||||
return adaptee.isCancelled();
|
return this.adaptee.isCancelled();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isDone() {
|
public boolean isDone() {
|
||||||
return adaptee.isDone();
|
return this.adaptee.isDone();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public T get() throws InterruptedException, ExecutionException {
|
public T get() throws InterruptedException, ExecutionException {
|
||||||
return adaptInternal(adaptee.get());
|
return adaptInternal(this.adaptee.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -107,7 +107,7 @@ public abstract class FutureAdapter<T, S> implements Future<T> {
|
|||||||
this.state = State.FAILURE;
|
this.state = State.FAILURE;
|
||||||
throw ex;
|
throw ex;
|
||||||
}
|
}
|
||||||
catch (RuntimeException ex) {
|
catch (Throwable ex) {
|
||||||
ExecutionException execEx = new ExecutionException(ex);
|
ExecutionException execEx = new ExecutionException(ex);
|
||||||
this.result = execEx;
|
this.result = execEx;
|
||||||
this.state = State.FAILURE;
|
this.state = State.FAILURE;
|
||||||
|
|||||||
@@ -666,7 +666,7 @@ public class AsyncRestTemplate extends AsyncHttpAccessor implements AsyncRestOpe
|
|||||||
}
|
}
|
||||||
return convertResponse(response);
|
return convertResponse(response);
|
||||||
}
|
}
|
||||||
catch (IOException ex) {
|
catch (Throwable ex) {
|
||||||
throw new ExecutionException(ex);
|
throw new ExecutionException(ex);
|
||||||
}
|
}
|
||||||
finally {
|
finally {
|
||||||
|
|||||||
Reference in New Issue
Block a user