Generalise some library related variables

This commit is contained in:
2016-08-17 20:26:31 +01:00
parent e3b807d23a
commit 8773f00707

View File

@@ -20,24 +20,24 @@ public class NativeLocator {
public File find(NativeDef nativeDef) throws IOException { public File find(NativeDef nativeDef) throws IOException {
String resourceName = String.format("%s/%s/%s/%s", nativeDef.getGroupPath(), nativeDef.name, nativeDef.platform, nativeDef.file); String resourceName = String.format("%s/%s/%s/%s", nativeDef.getGroupPath(), nativeDef.name, nativeDef.platform, nativeDef.file);
if (extractDir != null) { if (extractDir != null) {
File libFile = new File(extractDir, String.format("%s/%s", nativeDef.platform, nativeDef.file)); File file = new File(extractDir, String.format("%s/%s", nativeDef.platform, nativeDef.file));
File lockFile = new File(libFile.getParentFile(), libFile.getName() + ".lock"); File lockFile = new File(file.getParentFile(), file.getName() + ".lock");
lockFile.getParentFile().mkdirs(); lockFile.getParentFile().mkdirs();
lockFile.createNewFile(); lockFile.createNewFile();
RandomAccessFile lockFileAccess = new RandomAccessFile(lockFile, "rw"); RandomAccessFile lockFileAccess = new RandomAccessFile(lockFile, "rw");
try { try {
if (lockFile.length() > 0 && lockFileAccess.readBoolean()) { if (lockFile.length() > 0 && lockFileAccess.readBoolean()) {
// Library has been extracted // File has been extracted
return libFile; return file;
} }
URL resource = getClass().getClassLoader().getResource(resourceName); URL resource = getClass().getClassLoader().getResource(resourceName);
if (resource != null) { if (resource != null) {
// Extract library and write marker to lock file // Extract file and write marker to lock file
libFile.getParentFile().mkdirs(); file.getParentFile().mkdirs();
copy(resource, libFile); copy(resource, file);
lockFileAccess.seek(0); lockFileAccess.seek(0);
lockFileAccess.writeBoolean(true); lockFileAccess.writeBoolean(true);
return libFile; return file;
} }
} finally { } finally {
// Also releases lock // Also releases lock
@@ -46,15 +46,15 @@ public class NativeLocator {
} else { } else {
URL resource = getClass().getClassLoader().getResource(resourceName); URL resource = getClass().getClassLoader().getResource(resourceName);
if (resource != null) { if (resource != null) {
File libFile; File file;
File libDir = File.createTempFile(nativeDef.file, "dir"); File directory = File.createTempFile(nativeDef.file, "dir");
libDir.delete(); directory.delete();
libDir.mkdirs(); directory.mkdirs();
libFile = new File(libDir, nativeDef.file); file = new File(directory, nativeDef.file);
libFile.deleteOnExit(); file.deleteOnExit();
libDir.deleteOnExit(); directory.deleteOnExit();
copy(resource, libFile); copy(resource, file);
return libFile; return file;
} }
} }
return null; return null;