Move updater cache to its own directory
Some checks failed
/ deploy (push) Failing after 5m14s

This commit is contained in:
Minecon724 2024-12-01 14:50:28 +01:00
parent 31f996632d
commit d55afa26ea
Signed by: Minecon724
GPG key ID: 3CCC4D267742C8E8
2 changed files with 6 additions and 5 deletions

View file

@ -11,7 +11,6 @@ import eu.m724.tweaks.updater.cache.VersionedResource;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.scheduler.BukkitRunnable;
import java.io.File;
import java.io.FileOutputStream; import java.io.FileOutputStream;
import java.io.IOException; import java.io.IOException;
import java.util.HashSet; import java.util.HashSet;
@ -24,14 +23,12 @@ import java.util.stream.Collectors;
public class UpdateChecker extends BukkitRunnable { public class UpdateChecker extends BukkitRunnable {
private final Set<VersionedResource> resources; private final Set<VersionedResource> resources;
private final Logger logger; private final Logger logger;
private final File cacheFile;
private final Set<VersionedResource> availableUpdates = new HashSet<>(); private final Set<VersionedResource> availableUpdates = new HashSet<>();
UpdateChecker(Plugin plugin, Set<VersionedResource> resources) { UpdateChecker(Plugin plugin, Set<VersionedResource> resources) {
this.logger = Logger.getLogger(plugin.getLogger().getName() + "." + getClass().getSimpleName()); this.logger = Logger.getLogger(plugin.getLogger().getName() + "." + getClass().getSimpleName());
this.resources = resources; // TODO make a copy? this.resources = resources; // TODO make a copy?
this.cacheFile = new File(plugin.getDataFolder(), "version cache");
} }
private void checkAll() { private void checkAll() {
@ -82,7 +79,7 @@ public class UpdateChecker extends BukkitRunnable {
public void run() { public void run() {
checkAll(); checkAll();
try (FileOutputStream outputStream = new FileOutputStream(cacheFile)) { try (FileOutputStream outputStream = new FileOutputStream(UpdaterManager.cacheFile)) {
VersionCheckCache.writeAll(outputStream, resources.stream().map(VersionedResource::running).filter(Objects::nonNull).collect(Collectors.toSet())); VersionCheckCache.writeAll(outputStream, resources.stream().map(VersionedResource::running).filter(Objects::nonNull).collect(Collectors.toSet()));
} catch (IOException e) { } catch (IOException e) {
throw new RuntimeException(e); throw new RuntimeException(e);

View file

@ -20,18 +20,22 @@ import java.util.Set;
import java.util.stream.Collectors; import java.util.stream.Collectors;
public class UpdaterManager { public class UpdaterManager {
static File cacheFile;
private final Plugin plugin; private final Plugin plugin;
public UpdaterManager(Plugin plugin) { public UpdaterManager(Plugin plugin) {
this.plugin = plugin; this.plugin = plugin;
cacheFile = new File(plugin.getDataFolder(), "cache/updater");
} }
public void init() throws IOException { public void init() throws IOException {
// scan installed plugins // scan installed plugins
Set<SpigotResource> resources = new PluginScanner(plugin).load(); Set<SpigotResource> resources = new PluginScanner(plugin).load();
cacheFile.getParentFile().mkdirs(); // TODO move this somewhere else
// load installed versions from cache // load installed versions from cache
File cacheFile = new File(plugin.getDataFolder(), "version cache");
Set<ResourceVersion> installedVersions; Set<ResourceVersion> installedVersions;
try (FileInputStream inputStream = new FileInputStream(cacheFile)) { try (FileInputStream inputStream = new FileInputStream(cacheFile)) {
installedVersions = VersionCheckCache.loadAll(inputStream); installedVersions = VersionCheckCache.loadAll(inputStream);