Files
jsowell-charger-web/jsowell-pile/src/main/java/com/jsowell/pile/rpc/RpcResponseHandler.java

26 lines
837 B
Java
Raw Normal View History

2024-08-01 18:03:21 +08:00
package com.jsowell.pile.rpc;
2024-07-31 16:48:29 +08:00
2024-08-01 18:03:21 +08:00
import com.jsowell.common.protocol.RpcResponse;
import com.jsowell.common.protocol.SyncPromise;
import com.jsowell.common.util.RpcUtil;
2024-07-31 16:48:29 +08:00
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.SimpleChannelInboundHandler;
public class RpcResponseHandler extends SimpleChannelInboundHandler<RpcResponse> {
@Override
protected void channelRead0(ChannelHandlerContext ctx, RpcResponse msg) throws Exception {
// 根据请求id在集合中找到与外部线程通信的SyncPromise对象
SyncPromise syncPromise = RpcUtil.getSyncPromiseMap().get(msg.getId());
if(syncPromise != null) {
// 设置响应结果
2024-08-01 15:38:33 +08:00
// syncPromise.setRpcResponse(msg);
2024-07-31 16:48:29 +08:00
// 唤醒外部线程
syncPromise.wake();
}
}
}