use sensorml::model::document::SensorMLDocument;
use crate::error::ContextError;
use crate::error::MappingError;
pub trait InitiativeForwardMapper {
fn map_to_sensorml(
&self,
input: &serde_json::Value,
context: &dyn ContextProvider,
) -> Result<SensorMLDocument, MappingError>;
}
pub trait ContextProvider {
fn get_station_profile(&self, id: &str) -> Result<StationProfile, ContextError>;
}
#[derive(Debug)]
pub struct StationProfile {
pub id: String,
}