我知道spring有自己的ListenableFuture
实现,但是它有Futures.transform
的类似实现吗?我试图找到一种方法,使用spring提供的类链接操作,但我只看到使用Guava的例子。
答案 0 :(得分:0)
Springs实现似乎是ListenableFutureAdapter
以下是一个例子:
@Service
public class HeavyLiftingServiceImpl implements IHeavyLiftingService {
public ListenableFuture<String> heavyLifting() {
AsyncRestTemplate asycTemp = new AsyncRestTemplate();
ListenableFuture<String> future = asycTemp.execute(url, method, requestCallback, responseExtractor, urlVariable);
ListenableFutureAdapter<String, String> chainedFuture;
chainedFuture = new ListenableFutureAdapter<String, String>(future) {
@Override
protected String adapt(String adapteeResult)
throws ExecutionException {
String parsedString = parse(adapteeResult);
return adapteeResult;
}
};
return chainedFuture;
}
}
我建议使用Guava实现可听的未来。它更具可读性,并且有更多关于将它们链接在一起的文档