geoengine_api_client/models/
copernicus_dataspace_data_provider_definition.rs1use crate::models;
11use serde::{Deserialize, Serialize};
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
14pub struct CopernicusDataspaceDataProviderDefinition {
15 #[serde(rename = "description")]
16 pub description: String,
17 #[serde(rename = "gdalConfig")]
18 pub gdal_config: Vec<Vec<String>>,
19 #[serde(rename = "id")]
20 pub id: uuid::Uuid,
21 #[serde(rename = "name")]
22 pub name: String,
23 #[serde(rename = "priority", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
24 pub priority: Option<Option<i32>>,
25 #[serde(rename = "s3AccessKey")]
26 pub s3_access_key: String,
27 #[serde(rename = "s3SecretKey")]
28 pub s3_secret_key: String,
29 #[serde(rename = "s3Url")]
30 pub s3_url: String,
31 #[serde(rename = "stacUrl")]
32 pub stac_url: String,
33 #[serde(rename = "type")]
34 pub r#type: Type,
35}
36
37impl CopernicusDataspaceDataProviderDefinition {
38 pub fn new(description: String, gdal_config: Vec<Vec<String>>, id: uuid::Uuid, name: String, s3_access_key: String, s3_secret_key: String, s3_url: String, stac_url: String, r#type: Type) -> CopernicusDataspaceDataProviderDefinition {
39 CopernicusDataspaceDataProviderDefinition {
40 description,
41 gdal_config,
42 id,
43 name,
44 priority: None,
45 s3_access_key,
46 s3_secret_key,
47 s3_url,
48 stac_url,
49 r#type,
50 }
51 }
52}
53#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
55pub enum Type {
56 #[serde(rename = "CopernicusDataspace")]
57 CopernicusDataspace,
58}
59
60impl Default for Type {
61 fn default() -> Type {
62 Self::CopernicusDataspace
63 }
64}
65