MCPcopy Create free account
hub / github.com/chirpstack/chirpstack / list_adr_algorithms

Method list_adr_algorithms

chirpstack/src/api/device_profile.rs:892–917  ·  view source on GitHub ↗
(
        &self,
        request: Request<()>,
    )

Source from the content-addressed store, hash-verified

890 }
891
892 async fn list_adr_algorithms(
893 &self,
894 request: Request<()>,
895 ) -> Result<Response<api::ListDeviceProfileAdrAlgorithmsResponse>, Status> {
896 self.validator
897 .validate(
898 request.extensions(),
899 validator::ValidateActiveUserOrKey::new(),
900 )
901 .await?;
902
903 let items = adr::get_algorithms().await;
904 let mut result: Vec<api::AdrAlgorithmListItem> = items
905 .iter()
906 .map(|(k, v)| api::AdrAlgorithmListItem {
907 id: k.clone(),
908 name: v.clone(),
909 })
910 .collect();
911 result.sort_by(|a, b| a.name.cmp(&b.name));
912
913 Ok(Response::new(api::ListDeviceProfileAdrAlgorithmsResponse {
914 total_count: items.len() as u32,
915 result,
916 }))
917 }
918}
919
920#[cfg(test)]

Callers 1

test_device_profileFunction · 0.80

Calls 3

get_algorithmsFunction · 0.85
iterMethod · 0.80
validateMethod · 0.45

Tested by 1

test_device_profileFunction · 0.64