j_api/resource/
mod.rs

1pub mod identifier_object;
2pub mod object;
3pub use identifier_object::ResourceIdentifierObject;
4pub use object::ResourceObject;
5use serde::{Deserialize, Serialize};
6use serde_json::Value;
7use std::collections::HashMap;
8
9#[derive(Debug, Clone, Serialize, Deserialize)]
10#[serde(untagged)]
11pub enum ResourceType {
12    Identifier(ResourceIdentifierObject),
13    Object(ResourceObject),
14}
15
16pub trait ResourceTrait {
17    fn get_attributes(&self) -> Option<HashMap<String, Value>> {
18        None
19    }
20    fn get_id(&self) -> String;
21    fn to_identifier(&self) -> ResourceIdentifierObject;
22    fn to_resource_object(&self) -> ResourceObject;
23}