Added FileHelper class to manage setting permissions for all files.

This commit is contained in:
Banks Troutman
2019-12-09 03:32:22 -05:00
parent 09e91cf7e5
commit 2ff56759ea
5 changed files with 77 additions and 44 deletions

View File

@@ -0,0 +1,26 @@
package com.chameleonvision.util;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.attribute.PosixFileAttributes;
import java.nio.file.attribute.PosixFilePermission;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class FileHelper {
private FileHelper() {}
private static final Set<PosixFilePermission> allReadWriteExecutePerms = new HashSet<>(Arrays.asList(PosixFilePermission.values()));
public static void setFilePerms(Path path) throws IOException {
if (!Platform.CurrentPlatform.isWindows()) {
Set<PosixFilePermission> perms = Files.readAttributes(path, PosixFileAttributes.class).permissions();
if (!perms.equals(allReadWriteExecutePerms)) {
Files.setPosixFilePermissions(path, perms);
}
}
}
}

View File

@@ -69,7 +69,7 @@ public enum Platform {
}
}
public static Platform getCurrentPlatform() {
private static Platform getCurrentPlatform() {
if (OS_NAME.contains("Windows")) {
if (OS_ARCH.equals("amd64")) return Platform.WINDOWS_64;
}