(
&self,
alias: &str,
project_id: &str,
)
| 1283 | } |
| 1284 | |
| 1285 | async fn upsert_project_alias_key( |
| 1286 | &self, |
| 1287 | alias: &str, |
| 1288 | project_id: &str, |
| 1289 | ) -> Option<ProjectAliasRecord> { |
| 1290 | let now = crate::tracedecay::current_timestamp(); |
| 1291 | self.conn |
| 1292 | .execute( |
| 1293 | "INSERT INTO project_aliases (alias_path, project_id, last_seen_at) |
| 1294 | VALUES (?1, ?2, ?3) |
| 1295 | ON CONFLICT(alias_path) DO UPDATE SET |
| 1296 | project_id = excluded.project_id, |
| 1297 | last_seen_at = excluded.last_seen_at", |
| 1298 | params![alias, project_id, now], |
| 1299 | ) |
| 1300 | .await |
| 1301 | .ok()?; |
| 1302 | let mut rows = self |
| 1303 | .conn |
| 1304 | .query( |
| 1305 | "SELECT alias_path, project_id, last_seen_at |
| 1306 | FROM project_aliases WHERE alias_path = ?1", |
| 1307 | params![alias], |
| 1308 | ) |
| 1309 | .await |
| 1310 | .ok()?; |
| 1311 | let row = rows.next().await.ok()??; |
| 1312 | Some(ProjectAliasRecord { |
| 1313 | alias_path: row.get(0).ok()?, |
| 1314 | project_id: row.get(1).ok()?, |
| 1315 | last_seen_at: row.get(2).ok()?, |
| 1316 | }) |
| 1317 | } |
| 1318 | |
| 1319 | pub async fn upsert_store_instance( |
| 1320 | &self, |
no test coverage detected