secure.rs
1 #![allow(unused)] 2 3 use anyhow::Result; 4 use crate::Secrets; 5 use crate::battlenet::{BattleNetAuth, BattleNetSession}; 6 use crate::gog::GogSession; 7 use crate::retroachievements::RetroAchievementsAuth; 8 use crate::steam::SteamAuth; 9 10 pub fn getBattleNetClientAuth() -> Result<BattleNetAuth> 11 { 12 let secrets = Secrets.blocking_lock(); 13 let id = secrets.get(BattleNetAuth::ClientIdKey)?; 14 let key = secrets.get(BattleNetAuth::ClientSecretKey)?; 15 return Ok(BattleNetAuth::new(id, key)); 16 } 17 18 pub fn getBattleNetSession() -> Result<BattleNetSession> 19 { 20 let secrets = Secrets.blocking_lock(); 21 let json = secrets.get(BattleNetSession::SecretKey)?; 22 return Ok(serde_json::from_str(&json)?); 23 } 24 25 pub fn getGogSession() -> Result<GogSession> 26 { 27 let secrets = Secrets.blocking_lock(); 28 let json = secrets.get(GogSession::SecretKey)?; 29 return Ok(serde_json::from_str(&json)?); 30 } 31 32 pub fn getRetroAchievementsAuth() -> Result<RetroAchievementsAuth> 33 { 34 let secrets = Secrets.blocking_lock(); 35 let key = secrets.get(RetroAchievementsAuth::ApiKeySecretKey)?; 36 let username = secrets.get(RetroAchievementsAuth::UsernameSecretKey)?; 37 return Ok(RetroAchievementsAuth::new(key, username)); 38 } 39 40 pub fn getSteamAuth() -> Result<SteamAuth> 41 { 42 let secrets = Secrets.blocking_lock(); 43 let id = secrets.get(SteamAuth::UserIdSecretKey)?; 44 let key = secrets.get(SteamAuth::ApiKeySecretKey)?; 45 return Ok(SteamAuth::new(id, key)); 46 } 47 48 49 50 pub fn removeBattleNetClientId() -> Result<()> 51 { 52 let mut secrets = Secrets.blocking_lock(); 53 secrets.remove(BattleNetAuth::ClientIdKey)?; 54 _ = secrets.save()?; 55 return Ok(()); 56 } 57 58 pub fn removeBattleNetClientSecret() -> Result<()> 59 { 60 let mut secrets = Secrets.blocking_lock(); 61 secrets.remove(BattleNetAuth::ClientSecretKey)?; 62 _ = secrets.save()?; 63 return Ok(()); 64 } 65 66 pub fn removeBattleNetSession() -> Result<()> 67 { 68 let mut secrets = Secrets.blocking_lock(); 69 secrets.remove(BattleNetSession::SecretKey)?; 70 _ = secrets.save()?; 71 return Ok(()); 72 } 73 74 pub fn removeGogSession() -> Result<()> 75 { 76 let mut secrets = Secrets.blocking_lock(); 77 secrets.remove(GogSession::SecretKey)?; 78 _ = secrets.save()?; 79 return Ok(()); 80 } 81 82 pub fn removeRetroAchievementsApiKey() -> Result<()> 83 { 84 let mut secrets = Secrets.blocking_lock(); 85 secrets.remove(RetroAchievementsAuth::ApiKeySecretKey)?; 86 _ = secrets.save()?; 87 return Ok(()); 88 } 89 90 pub fn removeRetroAchievementsUsername() -> Result<()> 91 { 92 let mut secrets = Secrets.blocking_lock(); 93 secrets.remove(RetroAchievementsAuth::UsernameSecretKey)?; 94 _ = secrets.save()?; 95 return Ok(()); 96 } 97 98 pub fn removeSteamId() -> Result<()> 99 { 100 let mut secrets = Secrets.blocking_lock(); 101 secrets.remove(SteamAuth::UserIdSecretKey)?; 102 _ = secrets.save()?; 103 return Ok(()); 104 } 105 106 pub fn removeSteamApiKey() -> Result<()> 107 { 108 let mut secrets = Secrets.blocking_lock(); 109 secrets.remove(SteamAuth::ApiKeySecretKey)?; 110 _ = secrets.save()?; 111 return Ok(()); 112 } 113 114 115 116 pub fn setBattleNetClientId(id: String) -> Result<()> 117 { 118 let mut secrets = Secrets.blocking_lock(); 119 secrets.set(BattleNetAuth::ClientIdKey, id); 120 _ = secrets.save()?; 121 return Ok(()); 122 } 123 124 pub fn setBattleNetClientSecret(secret: String) -> Result<()> 125 { 126 let mut secrets = Secrets.blocking_lock(); 127 secrets.set(BattleNetAuth::ClientSecretKey, secret); 128 _ = secrets.save()?; 129 return Ok(()); 130 } 131 132 pub fn setBattleNetSession(session: BattleNetSession) -> Result<()> 133 { 134 let mut secrets = Secrets.blocking_lock(); 135 secrets.set(BattleNetSession::SecretKey, serde_json::to_string(&session)?); 136 _ = secrets.save()?; 137 return Ok(()); 138 } 139 140 pub fn setGogSession(session: GogSession) -> Result<()> 141 { 142 let mut secrets = Secrets.blocking_lock(); 143 secrets.set(GogSession::SecretKey, serde_json::to_string(&session)?); 144 _ = secrets.save()?; 145 return Ok(()); 146 } 147 148 pub fn setRetroAchievementsApiKey(key: String) -> Result<()> 149 { 150 let mut secrets = Secrets.blocking_lock(); 151 secrets.set(RetroAchievementsAuth::ApiKeySecretKey, key); 152 _ = secrets.save()?; 153 return Ok(()); 154 } 155 156 pub fn setRetroAchievementsUsername(username: String) -> Result<()> 157 { 158 let mut secrets = Secrets.blocking_lock(); 159 secrets.set(RetroAchievementsAuth::UsernameSecretKey, username); 160 _ = secrets.save()?; 161 return Ok(()); 162 } 163 164 pub fn setSteamId(id: String) -> Result<()> 165 { 166 let mut secrets = Secrets.blocking_lock(); 167 secrets.set(SteamAuth::UserIdSecretKey, id); 168 _ = secrets.save()?; 169 return Ok(()); 170 } 171 172 pub fn setSteamApiKey(key: String) -> Result<()> 173 { 174 let mut secrets = Secrets.blocking_lock(); 175 secrets.set(SteamAuth::ApiKeySecretKey, key); 176 _ = secrets.save()?; 177 return Ok(()); 178 }