geoengine_api_client/models/
gbif_data_provider_definition.rs1use crate::models;
11use serde::{Deserialize, Serialize};
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
14pub struct GbifDataProviderDefinition {
15 #[serde(rename = "autocompleteTimeout")]
16 pub autocomplete_timeout: i32,
17 #[serde(rename = "cacheTtl", skip_serializing_if = "Option::is_none")]
18 pub cache_ttl: Option<i32>,
19 #[serde(rename = "columns")]
20 pub columns: Vec<String>,
21 #[serde(rename = "dbConfig")]
22 pub db_config: Box<models::DatabaseConnectionConfig>,
23 #[serde(rename = "description")]
24 pub description: String,
25 #[serde(rename = "name")]
26 pub name: String,
27 #[serde(rename = "priority", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
28 pub priority: Option<Option<i32>>,
29 #[serde(rename = "type")]
30 pub r#type: Type,
31}
32
33impl GbifDataProviderDefinition {
34 pub fn new(autocomplete_timeout: i32, columns: Vec<String>, db_config: models::DatabaseConnectionConfig, description: String, name: String, r#type: Type) -> GbifDataProviderDefinition {
35 GbifDataProviderDefinition {
36 autocomplete_timeout,
37 cache_ttl: None,
38 columns,
39 db_config: Box::new(db_config),
40 description,
41 name,
42 priority: None,
43 r#type,
44 }
45 }
46}
47#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
49pub enum Type {
50 #[serde(rename = "Gbif")]
51 Gbif,
52}
53
54impl Default for Type {
55 fn default() -> Type {
56 Self::Gbif
57 }
58}
59