diff options
author | Lukasz Woznicki <lukasz.woznicki@softwareag.com> | 2022-02-09 13:55:02 +0000 |
---|---|---|
committer | Lukasz Woznicki <lukasz.woznicki@softwareag.com> | 2022-02-18 09:41:55 +0000 |
commit | ad065ec206ad3b48f9e1cc48080f4d2ecfe85a2e (patch) | |
tree | 2042dc1a03440f61b112006d6f12b532f0610566 /crates/core/tedge_mapper/src/az/mapper.rs | |
parent | b1907dc4780709bad572a7108314c563eb02b70a (diff) |
Move module to subdirectories and adjust use
Signed-off-by: Lukasz Woznicki <lukasz.woznicki@softwareag.com>
Diffstat (limited to 'crates/core/tedge_mapper/src/az/mapper.rs')
-rw-r--r-- | crates/core/tedge_mapper/src/az/mapper.rs | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/crates/core/tedge_mapper/src/az/mapper.rs b/crates/core/tedge_mapper/src/az/mapper.rs new file mode 100644 index 00000000..5bf2b2f3 --- /dev/null +++ b/crates/core/tedge_mapper/src/az/mapper.rs @@ -0,0 +1,41 @@ +use crate::{ + az::converter::AzureConverter, + mapping::{component::TEdgeComponent, mapper::create_mapper, size_threshold::SizeThreshold}, +}; + +use async_trait::async_trait; +use clock::WallClock; +use tedge_config::{AzureMapperTimestamp, TEdgeConfig}; +use tedge_config::{ConfigSettingAccessor, MqttPortSetting}; +use tracing::{info_span, Instrument}; + +const AZURE_MAPPER_NAME: &str = "tedge-mapper-az"; + +pub struct AzureMapper {} + +impl AzureMapper { + pub fn new() -> AzureMapper { + AzureMapper {} + } +} + +#[async_trait] +impl TEdgeComponent for AzureMapper { + async fn start(&self, tedge_config: TEdgeConfig) -> Result<(), anyhow::Error> { + let add_timestamp = tedge_config.query(AzureMapperTimestamp)?.is_set(); + let mqtt_port = tedge_config.query(MqttPortSetting)?.into(); + let clock = Box::new(WallClock); + let size_threshold = SizeThreshold(255 * 1024); + + let converter = Box::new(AzureConverter::new(add_timestamp, clock, size_threshold)); + + let mut mapper = create_mapper(AZURE_MAPPER_NAME, mqtt_port, converter).await?; + + mapper + .run() + .instrument(info_span!(AZURE_MAPPER_NAME)) + .await?; + + Ok(()) + } +} |