findFiles(".class", new File(contextRoot, "WEB-INF/classes"), scanList);
findFiles(".jar", new File(contextRoot, "WEB-INF/lib"), scanList);
logger.info("Starting autoreloading scanner... ");
Scanner scanner = new Scanner();
scanner.setScanInterval(Configurations.getInteger("refine.scanner.period",1));
scanner.setScanDirs(scanList);
scanner.setReportExistingFilesOnStartup(false);
scanner.addListener(new Scanner.BulkListener() {
@Override
public void filesChanged(@SuppressWarnings("rawtypes") List changedFiles) {
try {
logger.info("Stopping context: " + contextRoot.getAbsolutePath());
context.stop();
logger.info("Starting context: " + contextRoot.getAbsolutePath());
context.start();
configure(context);
} catch (Exception ex) {
throw new RuntimeException(ex);
}
}
});
scanner.start();
}