TransportChannel.java 文件源码

java
阅读 61 收藏 0 点赞 0 评论 0

项目:fastcatsearch3 作者:
public void sendResponse(Object obj) throws IOException {
    byte type = 0;
    type = TransportOption.setTypeMessage(type);
    byte status = 0;
    status = TransportOption.setResponse(status);
    status = TransportOption.setResponseObject(status);
    byte resType = 0;
    resType = TransportOption.setResponseObject(resType);
    CachedStreamOutput.Entry cachedEntry = CachedStreamOutput.popEntry();
    BytesStreamOutput stream = cachedEntry.bytes();
    stream.skip(MessageProtocol.HEADER_SIZE);
    stream.writeGenericValue(obj);
    stream.close();

    ChannelBuffer buffer = stream.bytesReference().toChannelBuffer();
    MessageProtocol.writeHeader(buffer, type, requestId, status);
    ChannelFuture future = channel.write(buffer);
    future.addListener(new TransportModule.CacheFutureListener(cachedEntry));
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号