in common/src/main/java/org/apache/celeborn/common/network/protocol/Message.java [189:254]
public static Message decode(Type msgType, ByteBuf in, boolean decodeBody) {
switch (msgType) {
case CHUNK_FETCH_REQUEST:
return ChunkFetchRequest.decode(in);
case CHUNK_FETCH_SUCCESS:
return ChunkFetchSuccess.decode(in, decodeBody);
case CHUNK_FETCH_FAILURE:
return ChunkFetchFailure.decode(in);
case RPC_REQUEST:
return RpcRequest.decode(in, decodeBody);
case RPC_RESPONSE:
return RpcResponse.decode(in, decodeBody);
case RPC_FAILURE:
return RpcFailure.decode(in);
case OPEN_STREAM:
return OpenStream.decode(in);
case STREAM_HANDLE:
return StreamHandle.decode(in);
case ONE_WAY_MESSAGE:
return OneWayMessage.decode(in, decodeBody);
case PUSH_DATA:
return PushData.decode(in, decodeBody);
case PUSH_MERGED_DATA:
return PushMergedData.decode(in, decodeBody);
case REGION_START:
return RegionStart.decode(in);
case REGION_FINISH:
return RegionFinish.decode(in);
case PUSH_DATA_HAND_SHAKE:
return PushDataHandShake.decode(in);
case READ_ADD_CREDIT:
return ReadAddCredit.decode(in);
case OPEN_STREAM_WITH_CREDIT:
return OpenStreamWithCredit.decode(in);
case BACKLOG_ANNOUNCEMENT:
return BacklogAnnouncement.decode(in);
case TRANSPORTABLE_ERROR:
return TransportableError.decode(in);
case BUFFER_STREAM_END:
return BufferStreamEnd.decode(in);
case HEARTBEAT:
return new Heartbeat();
default:
throw new IllegalArgumentException("Unexpected message type: " + msgType);
}
}