Add cache invalidation methods and update project version to 1.1.

This commit is contained in:
2026-04-23 06:18:17 +02:00
parent cfab96b15e
commit a0c546dade
4 changed files with 17 additions and 2 deletions
+1
View File
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="GradleMigrationSettings" migrationVersion="1" />
<component name="GradleSettings"> <component name="GradleSettings">
<option name="linkedExternalProjectsSettings"> <option name="linkedExternalProjectsSettings">
<GradleProjectSettings> <GradleProjectSettings>
+3 -1
View File
@@ -3,7 +3,9 @@
<component name="MaterialThemeProjectNewConfig"> <component name="MaterialThemeProjectNewConfig">
<option name="metadata"> <option name="metadata">
<MTProjectMetadataState> <MTProjectMetadataState>
<option name="userId" value="69332f14:19db8254562:-7eee" /> <option name="migrated" value="true" />
<option name="pristineConfig" value="false" />
<option name="userId" value="6d276d29:1992daa6e45:-7ffe" />
</MTProjectMetadataState> </MTProjectMetadataState>
</option> </option>
</component> </component>
+1 -1
View File
@@ -4,7 +4,7 @@ plugins {
} }
group = 'de.catmangames.jsonfetcher' group = 'de.catmangames.jsonfetcher'
version = '1.0' version = '1.1'
java { java {
sourceCompatibility = JavaVersion.VERSION_11 sourceCompatibility = JavaVersion.VERSION_11
@@ -38,6 +38,18 @@ public class JsonFetcher {
return gson.fromJson(getRaw(path), type.getType()); return gson.fromJson(getRaw(path), type.getType());
} }
// Einzelnen Eintrag invalidieren
public void invalidate(String path) {
cacheData.remove(path);
cacheTimestamps.remove(path);
}
// Gesamten Cache leeren
public void invalidateAll() {
cacheData.clear();
cacheTimestamps.clear();
}
private String getRaw(String path) throws IOException { private String getRaw(String path) throws IOException {
if (cacheTtlMs > 0 && cacheData.containsKey(path)) { if (cacheTtlMs > 0 && cacheData.containsKey(path)) {
long age = System.currentTimeMillis() - cacheTimestamps.get(path)[0]; long age = System.currentTimeMillis() - cacheTimestamps.get(path)[0];