webhook_line/models/
source.rs

1/*
2 * Webhook Type Definition
3 *
4 * Webhook event definition of the LINE Messaging API
5 *
6 * The version of the OpenAPI document: 1.0.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14use super::{GroupSource, RoomSource, UserSource};
15
16/// Source : the source of the event.
17#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
18#[serde(tag = "type")]
19pub enum Source {
20    #[serde(rename = "group")]
21    GroupSource(GroupSource),
22    #[serde(rename = "room")]
23    RoomSource(RoomSource),
24    #[serde(rename = "user")]
25    UserSource(UserSource),
26}
27
28impl Default for Source {
29    fn default() -> Self {
30        Self::GroupSource(GroupSource::default())
31    }
32}