fluss/rpc/message/
fetch.rs1use crate::proto::FetchLogResponse;
19use crate::rpc::frame::ReadError;
20
21use crate::rpc::api_key::ApiKey;
22use crate::rpc::api_version::ApiVersion;
23use crate::rpc::frame::WriteError;
24use crate::rpc::message::{ReadVersionedType, RequestBody, WriteVersionedType};
25use crate::{impl_read_version_type, impl_write_version_type, proto};
26use prost::Message;
27
28use bytes::{Buf, BufMut};
29
30#[allow(dead_code)]
31const LOG_FETCH_MAX_BYTES: i32 = 16 * 1024 * 1024;
32#[allow(dead_code)]
33const LOG_FETCH_MIN_BYTES: i32 = 1;
34#[allow(dead_code)]
35const LOG_FETCH_WAIT_MAX_TIME: i32 = 500;
36
37pub struct FetchLogRequest {
38 pub inner_request: proto::FetchLogRequest,
39}
40
41impl FetchLogRequest {
42 pub fn new(fetch_log_request: proto::FetchLogRequest) -> Self {
43 Self {
44 inner_request: fetch_log_request,
45 }
46 }
47}
48
49impl RequestBody for FetchLogRequest {
50 type ResponseBody = FetchLogResponse;
51
52 const API_KEY: ApiKey = ApiKey::FetchLog;
53
54 const REQUEST_VERSION: ApiVersion = ApiVersion(0);
55}
56
57impl_write_version_type!(FetchLogRequest);
58impl_read_version_type!(FetchLogResponse);