cognite/dto/data_modeling/instances/extensions/
common.rs1use serde::{Deserialize, Serialize};
2use serde_with::skip_serializing_none;
3
4use crate::models::instances::InstanceId;
5
6#[skip_serializing_none]
7#[derive(Serialize, Deserialize, Clone, Debug, Default)]
8#[serde(rename_all = "camelCase")]
9pub struct CogniteSourceable {
11 pub source_id: Option<String>,
13 pub source_context: Option<String>,
15 pub source: Option<InstanceId>,
17 pub source_created_time: Option<i64>,
19 pub source_updated_time: Option<i64>,
21 pub source_created_user: Option<String>,
24 pub source_updated_user: Option<String>,
27}
28
29#[skip_serializing_none]
30#[derive(Serialize, Deserialize, Clone, Debug, Default)]
31#[serde(rename_all = "camelCase")]
32pub struct CogniteDescribable {
34 pub name: Option<String>,
36 pub description: Option<String>,
38 pub tags: Option<Vec<String>>,
40 pub aliases: Option<Vec<String>>,
42}
43
44impl CogniteDescribable {
45 pub fn new() -> Self {
47 Self {
48 ..Default::default()
49 }
50 }
51}
52
53#[skip_serializing_none]
54#[derive(Serialize, Deserialize, Clone, Debug, Default)]
55#[serde(rename_all = "camelCase")]
56pub struct CogniteAuditable {
58 pub last_updated_time: i64,
60 pub created_time: i64,
62 pub deleted_time: Option<i64>,
64}