/** * Find a jar or a folder containing a plugin.xml file * @param startDir the directory to search in * @return the first jar or plugin folder found */ private static File getPluginDir(File startDir) { if (!startDir.isDirectory()) { if (startDir.getName().endsWith(".jar")){ return startDir; } return null; } for (File f : startDir.listFiles()) { File pluginDir = getPluginDir(f); if (pluginDir != null) { return pluginDir; } } return null; }
/** * Find a jar or a folder containing a plugin.xml file * @param startDir the directory to search in * @return the first jar or plugin folder found */ private static File getPluginDir(File startDir) { if (!startDir.isDirectory()) { if (startDir.getName().endsWith(".jar")){ return startDir; } return null; } for (File f : startDir.listFiles()) { File pluginDir = getPluginDir(f); if (pluginDir != null) { return pluginDir; } } return null; }
/** * Find a jar or a folder containing a plugin.xml file * * @param startDir the directory to search in * @return the first jar or plugin folder found. Optional.empty() if nothing is found. */ private static Optional<File> getPluginDir(File startDir) { if (!startDir.isDirectory()) { if (startDir.getName().endsWith(".jar")) { return Optional.of(startDir); } return Optional.empty(); } File[] files = startDir.listFiles(); if (files == null) { return Optional.empty(); } for (File f : files) { Optional<File> pluginDir = getPluginDir(f); if (pluginDir.isPresent()) { return pluginDir; } } return Optional.empty(); }
return getPluginDir(tempDir);
return getPluginDir(tempDir);