geoengine_api_client/models/
project.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct Project {
16 #[serde(rename = "bounds")]
17 pub bounds: Box<models::StRectangle>,
18 #[serde(rename = "description")]
19 pub description: String,
20 #[serde(rename = "id")]
21 pub id: uuid::Uuid,
22 #[serde(rename = "layers")]
23 pub layers: Vec<models::ProjectLayer>,
24 #[serde(rename = "name")]
25 pub name: String,
26 #[serde(rename = "plots")]
27 pub plots: Vec<models::Plot>,
28 #[serde(rename = "timeStep")]
29 pub time_step: Box<models::TimeStep>,
30 #[serde(rename = "version")]
31 pub version: Box<models::ProjectVersion>,
32}
33
34impl Project {
35 pub fn new(bounds: models::StRectangle, description: String, id: uuid::Uuid, layers: Vec<models::ProjectLayer>, name: String, plots: Vec<models::Plot>, time_step: models::TimeStep, version: models::ProjectVersion) -> Project {
36 Project {
37 bounds: Box::new(bounds),
38 description,
39 id,
40 layers,
41 name,
42 plots,
43 time_step: Box::new(time_step),
44 version: Box::new(version),
45 }
46 }
47}
48