/** * The path $USER_HOME/ignore */ public static Path getUserIgnoreDir() { return getUserSubdirectory("ignore"); }
private static Path getWindupSubdirectory(String subdirectory) { Path windupHome = getWindupHome(); if (windupHome == null) return null; return windupHome.resolve(subdirectory); } }
/** * The path $WINDUP_HOME/ignore */ public static Path getWindupIgnoreDir() { return getWindupSubdirectory("ignore"); }
public void perform(GraphRewrite event, EvaluationContext evCtx) { Visitor<File> visitor = new Visitor<File>() { @Override public void visit(File file) { try { log.info("Loading archive identification metadata from [" + file.getAbsolutePath() + "]"); SkippedArchives.load(file); } catch (Exception e) { throw new WindupException("Failed to load metadata from file [" + file + "]", e); } } }; FileSuffixPredicate predicate = new FileSuffixPredicate("\\.archive-ignore\\.txt"); FileVisit.visit(WindupPathUtil.getUserIgnoreDir().toFile(), predicate, visitor); FileVisit.visit(WindupPathUtil.getWindupIgnoreDir().toFile(), predicate, visitor); } });
public void perform(GraphRewrite event, EvaluationContext evCtx) { Visitor<File> visitor = new Visitor<File>() { @Override public void visit(File file) { try { log.info("Loading archive identification metadata from [" + file.getAbsolutePath() + "]"); IdentifiedArchives.addMappingsFrom(file); } catch (Exception e) { throw new WindupException("Failed to load metadata from file [" + file + "]", e); } } }; FileSuffixPredicate predicate = new FileSuffixPredicate("\\.archive-metadata\\.txt"); FileVisit.visit(WindupPathUtil.getUserCacheDir().toFile(), predicate, visitor); FileVisit.visit(WindupPathUtil.getWindupCacheDir().toFile(), predicate, visitor); } });
private static Path getUserSubdirectory(String subdirectory) { Path windupUserDir = getWindupUserDir(); if (windupUserDir == null) return null; return windupUserDir.resolve(subdirectory); }
/** * Scans all Forge addons for classes accepted by given filter. * * TODO: Could be refactored - scan() is almost the same. */ public List<Class<?>> scanClasses(Predicate<String> filter) { List<Class<?>> discoveredClasses = new ArrayList<>(128); // For each Forge addon... for (Addon addon : furnace.getAddonRegistry().getAddons(AddonFilters.allStarted())) { List<String> discoveredFileNames = filterAddonResources(addon, filter); // Then try to load the classes. for (String discoveredFilename : discoveredFileNames) { String clsName = WindupPathUtil.classFilePathToClassname(discoveredFilename); try { Class<?> clazz = addon.getClassLoader().loadClass(clsName); discoveredClasses.add(clazz); } catch (ClassNotFoundException ex) { LOG.log(Level.WARNING, "Failed to load class for name '" + clsName + "':\n" + ex.getMessage(), ex); } } } return discoveredClasses; }
FileVisit.visit(WindupPathUtil.getUserIgnoreDir().toFile(), predicate, visitor); FileVisit.visit(WindupPathUtil.getWindupIgnoreDir().toFile(), predicate, visitor);
/** * The path $USER_HOME/rules */ public static Path getUserRulesDir() { return getUserSubdirectory("rules"); }
/** * The path $WINDUP_HOME/cache */ public static Path getWindupCacheDir() { return getWindupSubdirectory("cache"); }
/** * The path $USER_HOME/cache */ public static Path getUserCacheDir() { return getUserSubdirectory("cache"); }
/** * The path $WINDUP_HOME/rules */ public static Path getWindupRulesDir() { return getWindupSubdirectory("rules"); }