fluvio_spu_schema/server/
api_key.rs

1use fluvio_protocol::{Decoder, Encoder};
2
3// Make sure that the ApiVersion variant matches dataplane's API_VERSIONS_KEY
4static_assertions::const_assert_eq!(
5    fluvio_protocol::link::versions::VERSIONS_API_KEY,
6    SpuServerApiKey::ApiVersion as u16,
7);
8
9/// Api Key for Spu Server API
10#[repr(u16)]
11#[derive(Eq, PartialEq, Debug, Encoder, Decoder, Clone, Copy)]
12#[fluvio(encode_discriminant)]
13pub enum SpuServerApiKey {
14    ApiVersion = 18, // API_VERSIONS_KEY
15
16    Produce = 0,
17    #[cfg(feature = "file")]
18    Fetch = 1,
19
20    FetchOffsets = 1002,
21    StreamFetch = 1003,
22    UpdateOffsets = 1005,
23    UpdateConsumerOffset = 1006,
24    DeleteConsumerOffset = 1007,
25    FetchConsumerOffsets = 1008,
26
27    StartMirror = 2000,
28}
29
30impl Default for SpuServerApiKey {
31    fn default() -> Self {
32        Self::ApiVersion
33    }
34}