mirror of
https://github.com/bloodmc/GriefDefender.git
synced 2025-02-08 00:31:37 +01:00
Fixed sponge claim migrator to find GP config directory via API (#130)
This commit is contained in:
parent
27c4b80954
commit
21a30b7984
@ -52,7 +52,6 @@
|
||||
import java.nio.channels.ReadableByteChannel;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.security.MessageDigest;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
@ -72,7 +71,6 @@ public class GDBootstrap {
|
||||
private Map<String, File> jarMap = new HashMap<>();
|
||||
private List<String> relocateList = new ArrayList<>();
|
||||
private static GDBootstrap instance;
|
||||
private static final String LIB_ROOT_PATH = "./config/griefdefender/lib/";
|
||||
private static final String USER_AGENT = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.75 Safari/535.7";
|
||||
|
||||
public static GDBootstrap getInstance() {
|
||||
@ -101,6 +99,7 @@ public void onPreInit(GamePreInitializationEvent event) {
|
||||
this.getLogger().error("Resource " + bukkitJsonVersion + ".json is corrupted!. Please contact author for assistance.");
|
||||
return;
|
||||
}
|
||||
final Path LIB_ROOT_PATH = instance.configPath.resolve("lib");
|
||||
final Iterator<JSONObject> iterator = libraries.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
JSONObject lib = iterator.next();
|
||||
@ -109,8 +108,7 @@ public void onPreInit(GamePreInitializationEvent event) {
|
||||
final String path = (String) lib.get("path");
|
||||
final String relocate = (String) lib.get("relocate");
|
||||
final String url = (String) lib.get("url");
|
||||
final Path libPath = Paths.get(LIB_ROOT_PATH).resolve(path);
|
||||
final File file = libPath.toFile();
|
||||
final Path libPath = LIB_ROOT_PATH.resolve(path);
|
||||
downloadLibrary(name, relocate, sha1, url, libPath);
|
||||
}
|
||||
} catch (Throwable t) {
|
||||
|
@ -39,7 +39,6 @@
|
||||
import java.io.IOException;
|
||||
import java.nio.file.Files;
|
||||
import java.nio.file.Path;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.HashSet;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
@ -58,25 +57,28 @@ public class GPSpongeMigrator {
|
||||
|
||||
private static GPSpongeMigrator instance;
|
||||
public PermissionService permissionService = GriefDefenderPlugin.getInstance().permissionService;
|
||||
final Path GP_GLOBAL_PLAYER_DATA_PATH = Paths.get("config", "griefprevention", "GlobalPlayerData");
|
||||
final Path GP_CLAIM_DATA_PATH = Paths.get("config", "griefprevention", "worlds");
|
||||
final Path GD_DATA_ROOT_PATH = Paths.get("config", "griefdefender");
|
||||
final Path GD_DATA_ROOT_PATH = GriefDefenderPlugin.getInstance().getConfigPath();
|
||||
final Path GD_GLOBAL_PLAYER_DATA_PATH = GD_DATA_ROOT_PATH.resolve("GlobalPlayerData");
|
||||
final Path GD_CLAIM_DATA_PATH = GD_DATA_ROOT_PATH.resolve("worlds");
|
||||
final Path GP_DATA_ROOT_PATH = GD_DATA_ROOT_PATH.getParent().resolve("griefprevention");
|
||||
final Path GP_GLOBAL_PLAYER_DATA_PATH = GP_DATA_ROOT_PATH.resolve("GlobalPlayerData");
|
||||
final Path GP_CLAIM_DATA_PATH = GP_DATA_ROOT_PATH.resolve("worlds");
|
||||
|
||||
public void migrateData() {
|
||||
try {
|
||||
if (Files.exists(GP_GLOBAL_PLAYER_DATA_PATH)) {
|
||||
if (Files.isDirectory(GP_GLOBAL_PLAYER_DATA_PATH)) {
|
||||
FileUtils.copyDirectory(GP_GLOBAL_PLAYER_DATA_PATH.toFile(), GD_DATA_ROOT_PATH.resolve("GlobalPlayerData").toFile(), true);
|
||||
FileUtils.copyDirectory(GP_GLOBAL_PLAYER_DATA_PATH.toFile(), GD_GLOBAL_PLAYER_DATA_PATH.toFile(), true);
|
||||
} else {
|
||||
// Support symlinks
|
||||
FileUtils.copyFile(GP_GLOBAL_PLAYER_DATA_PATH.toFile(), GD_DATA_ROOT_PATH.resolve("GlobalPlayerData").toFile(), true);
|
||||
FileUtils.copyFile(GP_GLOBAL_PLAYER_DATA_PATH.toFile(), GD_GLOBAL_PLAYER_DATA_PATH.toFile(), true);
|
||||
}
|
||||
}
|
||||
FileUtils.copyDirectory(GP_CLAIM_DATA_PATH.toFile(), GD_DATA_ROOT_PATH.resolve("worlds").toFile(), true);
|
||||
FileUtils.copyDirectory(GP_CLAIM_DATA_PATH.toFile(), GD_CLAIM_DATA_PATH.toFile(), true);
|
||||
} catch (IOException e1) {
|
||||
e1.printStackTrace();
|
||||
}
|
||||
final File dataPath = GD_DATA_ROOT_PATH.resolve("worlds").toFile();
|
||||
final File dataPath = GD_CLAIM_DATA_PATH.toFile();
|
||||
final File[] files = dataPath.listFiles();
|
||||
|
||||
GriefDefenderPlugin.getInstance().executor.execute(() -> {
|
||||
|
Loading…
Reference in New Issue
Block a user