pub struct CkanDataset {
pub id: String,
pub name: String,
pub title: String,
pub notes: Option<String>,
pub extras: Map<String, Value>,
}Expand description
Data Transfer Object for CKAN dataset details.
This structure represents the core fields returned by the CKAN package_show API.
Additional fields returned by CKAN are captured in the extras map.
§Examples
use ceres_client::ckan::CkanDataset;
let json = r#"{
"id": "dataset-123",
"name": "my-dataset",
"title": "My Dataset",
"notes": "Description of the dataset",
"organization": {"name": "test-org"}
}"#;
let dataset: CkanDataset = serde_json::from_str(json).unwrap();
assert_eq!(dataset.id, "dataset-123");
assert_eq!(dataset.title, "My Dataset");
assert!(dataset.extras.contains_key("organization"));Fields§
§id: StringUnique identifier for the dataset
name: StringURL-friendly name/slug of the dataset
title: StringHuman-readable title of the dataset
notes: Option<String>Optional description/notes about the dataset
extras: Map<String, Value>All other fields returned by CKAN (e.g., organization, tags, resources)
Trait Implementations§
Source§impl Clone for CkanDataset
impl Clone for CkanDataset
Source§fn clone(&self) -> CkanDataset
fn clone(&self) -> CkanDataset
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CkanDataset
impl Debug for CkanDataset
Source§impl<'de> Deserialize<'de> for CkanDataset
impl<'de> Deserialize<'de> for CkanDataset
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for CkanDataset
impl RefUnwindSafe for CkanDataset
impl Send for CkanDataset
impl Sync for CkanDataset
impl Unpin for CkanDataset
impl UnwindSafe for CkanDataset
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more