axum_cometd/types/
events.rs

1use crate::ClientId;
2use axum::http::HeaderMap;
3
4#[allow(missing_docs)]
5#[derive(Debug)]
6pub enum Event<AdditionalData, CustomData> {
7    /// Struct used in sessionAdded callbacks.
8    SessionAdded {
9        client_id: ClientId,
10        headers: HeaderMap,
11        data: AdditionalData,
12    },
13    /// Struct used in subscribe callbacks.
14    Subscribe {
15        client_id: ClientId,
16        headers: HeaderMap,
17        channels: Vec<String>,
18        data: AdditionalData,
19    },
20    /// Struct used in sessionRemoved callbacks.
21    SessionRemoved { client_id: ClientId },
22    /// Some custom data to send.
23    CustomData(CustomData),
24}