我想创建一个简单的接口来创建所有异步请求(回调)并同步返回结果。 我可以使用Future callable,但我使用的请求是API请求所以Future将无济于事。 例如:
public boolean login(String user,String pass) {
boolean result = false;
API_Login(user,pass,new APICallback() {
@Override
public void done(APIException e) {
//logic here
result = true;
}
});
return result;
}
我考虑过使用promise库,但是我必须在API之外实现一个回调,用于承诺的“当时”或“完成”事件。
答案 0 :(得分:0)
您可以使用消息代理。 1.启动请求处理器线程。 2.在此线程中接收API请求。 3.要向downteam发送请求,请使用消息代理。将下游请求发布到消息代理。在correlationId上启动一个监听器。 4A。调度程序组件可以监听消息代理和&拿起你的下游请求。它实际上将与下游沟通。 4B。从下游获取响应(Async)。将此响应发布到消息代理 5.您的主要听众会收到回复。 6.将回复或超时发回给消费者。