Start tracking Lutris IDs

This commit is contained in:
mtkennerly 2024-04-20 17:59:28 -04:00
parent 97683408c5
commit 06602c842e
No known key found for this signature in database
GPG key ID: E764BE00BE6E6408
7 changed files with 35 additions and 1 deletions

View file

@ -187,6 +187,7 @@ impl Game {
self.id = IdMetadata {
flatpak: None,
gog_extra: cache.gog_side.clone(),
lutris: cache.lutris.clone(),
steam_extra: cache.steam_side.clone(),
};
@ -515,13 +516,15 @@ pub struct IdMetadata {
pub flatpak: Option<String>,
#[serde(default, skip_serializing_if = "BTreeSet::is_empty")]
pub gog_extra: BTreeSet<u64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lutris: Option<String>,
#[serde(default, skip_serializing_if = "BTreeSet::is_empty")]
pub steam_extra: BTreeSet<u32>,
}
impl IdMetadata {
pub fn is_empty(&self) -> bool {
self.flatpak.is_none() && self.gog_extra.is_empty() && self.steam_extra.is_empty()
self.flatpak.is_none() && self.gog_extra.is_empty() && self.lutris.is_none() && self.steam_extra.is_empty()
}
}

View file

@ -336,6 +336,8 @@ pub struct WikiCacheEntry {
pub gog: Option<u64>,
#[serde(skip_serializing_if = "BTreeSet::is_empty")]
pub gog_side: BTreeSet<u64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub lutris: Option<String>,
pub page_id: u64,
#[serde(skip_serializing_if = "Vec::is_empty")]
pub renamed_from: Vec<String>,
@ -402,6 +404,12 @@ impl WikiCacheEntry {
.filter(|x| *x > 0)
.collect();
}
Some("lutris") => {
let value = preprocess_text(&attribute.value.to_string());
if !value.is_empty() {
out.lutris = Some(value);
}
}
_ => {}
}
}