MCPcopy Create free account
hub / github.com/NativeScript/SimDeck / upsert

Method upsert

packages/server/src/inspector.rs:458–475  ·  view source on GitHub ↗
(&self, process_identifier: i64, info: Value)

Source from the content-addressed store, hash-verified

456 }
457
458 async fn upsert(&self, process_identifier: i64, info: Value) -> io::Result<()> {
459 let _lock = RegistryFileLock::acquire(&self.path)?;
460 let mut registry = read_registry_file(&self.path);
461 prune_registry_file(&mut registry);
462 registry.inspectors.retain(|entry| {
463 !(entry.process_identifier == process_identifier && entry.service_id == self.service_id)
464 });
465 registry.inspectors.push(PublishedInspector {
466 access_token: self.access_token.clone(),
467 available_sources: inspector_available_sources(&info),
468 service_id: self.service_id.clone(),
469 info,
470 process_identifier,
471 server_url: self.server_url.clone(),
472 updated_at_unix_ms: now_unix_ms(),
473 });
474 write_registry_file(&self.path, &registry)
475 }
476
477 async fn remove(&self, process_identifier: i64) -> io::Result<()> {
478 let _lock = RegistryFileLock::acquire(&self.path)?;

Calls 6

read_registry_fileFunction · 0.85
prune_registry_fileFunction · 0.85
now_unix_msFunction · 0.85
write_registry_fileFunction · 0.85
cloneMethod · 0.65

Tested by

no test coverage detected