tuwunel_admin/query/raw/
get.rs1use base64::prelude::*;
2use tokio::time::Instant;
3use tuwunel_core::Result;
4
5use super::{decode, encode};
6use crate::admin_command;
7
8#[admin_command]
9pub(super) async fn raw_get(&self, map: String, key: String, base64: bool) -> Result {
10 let map = self.services.db.get(&map)?;
11 let timer = Instant::now();
12
13 let key = decode(&key);
14 let handle = map.get(&key).await?;
15
16 let query_time = timer.elapsed();
17
18 let result = if base64 {
19 BASE64_STANDARD.encode(&handle)
20 } else {
21 encode(&handle)
22 };
23
24 write!(self, "Query completed in {query_time:?}:\n\n```rs\n{result:?}\n```").await
25}