protected void channelRead0()

in runner-core/src/main/java/org/apache/apisix/plugin/runner/handler/RpcCallHandler.java [83:108]


    protected void channelRead0(ChannelHandlerContext ctx, A6Request request) {
        try {
            if (request instanceof A6ErrRequest) {
                errorHandle(ctx, ((A6ErrRequest) request).getCode());
                return;
            }

            if (request.getType() == Constants.RPC_EXTRA_INFO) {
                assert request instanceof ExtraInfoResponse;
                handleExtraInfo(ctx, (ExtraInfoResponse) request);
            }

            if (request.getType() == Constants.RPC_HTTP_REQ_CALL) {
                assert request instanceof HttpRequest;
                handleHttpReqCall(ctx, (HttpRequest) request);
            }

            if (request.getType() == Constants.RPC_HTTP_RESP_CALL) {
                assert request instanceof PostRequest;
                handleHttpRespCall(ctx, (PostRequest) request);
            }
        } catch (Exception e) {
            logger.error("handle request error: ", e);
            errorHandle(ctx, Code.SERVICE_UNAVAILABLE);
        }
    }