DevelopmentNodeEnvironment_MicrosoftVSCodeDependency_22NodeVersion_Bundle_Clean_Debug_ElectronProfile_EsbuildCompiler_Mountain/IPC/WindServiceAdapters/
WindStorageService.rs1use std::sync::Arc;
5
6use CommonLibrary::{Error::CommonError::CommonError, Storage::StorageProvider::StorageProvider};
7
8pub struct Struct {
9 pub(super) provider:Arc<dyn StorageProvider>,
10}
11
12impl Struct {
13 pub fn new(provider:Arc<dyn StorageProvider>) -> Self { Self { provider } }
14
15 pub async fn get(&self, key:String) -> Result<serde_json::Value, String> {
16 let value = self
17 .provider
18 .GetStorageValue(false, &key)
19 .await
20 .map_err(|e:CommonError| e.to_string())?
21 .ok_or_else(|| "Storage key not found".to_string())?;
22
23 Ok(value)
24 }
25
26 pub async fn set(&self, key:String, value:serde_json::Value) -> Result<(), String> {
27 self.provider
28 .UpdateStorageValue(false, key.to_string(), Some(value))
29 .await
30 .map_err(|e:CommonError| e.to_string())
31 }
32}