Author: tchemit Date: 2009-08-24 21:04:29 +0200 (Mon, 24 Aug 2009) New Revision: 612 Modified: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/EugenePlugin.java Log: use PluginHelper.getIncludedFiles to botain the model files to treate Modified: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/EugenePlugin.java =================================================================== --- trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/EugenePlugin.java 2009-08-24 19:02:00 UTC (rev 611) +++ trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/EugenePlugin.java 2009-08-24 19:04:29 UTC (rev 612) @@ -34,8 +34,8 @@ import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.project.MavenProject; -import org.nuiton.util.FileUtil; import org.nuiton.eugene.Generator; +import org.nuiton.util.PluginHelper; /** * Effectue toutes les générations et copie les fichiers générés @@ -143,6 +143,11 @@ getLog().warn("no model to treate"); return; } + if (verbose) { + for (File m : modelFiles) { + getLog().info("will treate model file : " + m); + } + } List<String> packages = getPackagesToGenerate(); @@ -200,34 +205,54 @@ return generatedPackagesAsList; } + /** + * Recuperation de la liste des fichiers de modele a traite. + * + * @return la liste des modeles a utiliser + */ protected File[] getModelFiles() { - // get file to generate - // TODO improve this loop - // TODO too strange code - //TODO TC-20090820 use a DirectoryScanner which understand ant-like regex patterns :) List<File> modelFiles = new ArrayList<File>(); String[] includePatterns = includes.split(","); + for (File srcDirGen : generateResources.getInputs()) { - for (String includePattern : includePatterns) { - includePattern = includePattern.trim(); - boolean recursive = false; - if (includePattern.startsWith("**/")) { - recursive = true; - includePattern = includePattern.substring(3); - } - // transform pattern in java regex - includePattern = includePattern.replaceAll("\\.", "\\\\."); - includePattern = includePattern.replaceAll("\\*", ".*"); - // log java regex - if (verbose) { - getLog().info("Search for " + includePattern + " in " + srcDirGen.getAbsolutePath()); - } - List<File> currentFiles = FileUtil.find(srcDirGen, includePattern, recursive); - modelFiles.addAll(currentFiles); + + if (verbose) { + getLog().info("Search for " + Arrays.toString(includePatterns) + " in " + srcDirGen.getAbsolutePath()); } + List<File> currentFiles = PluginHelper.getIncludedFiles(srcDirGen, includePatterns, null); + modelFiles.addAll(currentFiles); } return modelFiles.toArray(new File[modelFiles.size()]); } + +// protected File[] getModelFiles() { +// // get file to generate +// // TODO improve this loop +// // TODO too strange code +// //TODO TC-20090820 use a DirectoryScanner which understand ant-like regex patterns :) +// List<File> modelFiles = new ArrayList<File>(); +// String[] includePatterns = includes.split(","); +// for (File srcDirGen : generateResources.getInputs()) { +// for (String includePattern : includePatterns) { +// includePattern = includePattern.trim(); +// boolean recursive = false; +// if (includePattern.startsWith("**/")) { +// recursive = true; +// includePattern = includePattern.substring(3); +// } +// // transform pattern in java regex +// includePattern = includePattern.replaceAll("\\.", "\\\\."); +// includePattern = includePattern.replaceAll("\\*", ".*"); +// // log java regex +// if (verbose) { +// getLog().info("Search for " + includePattern + " in " + srcDirGen.getAbsolutePath()); +// } +// List<File> currentFiles = FileUtil.find(srcDirGen, includePattern, recursive); +// modelFiles.addAll(currentFiles); +// } +// } +// return modelFiles.toArray(new File[modelFiles.size()]); +// } protected List<Generator> getGenerators(List<String> generatedPackagesAsList) throws MojoFailureException, MojoExecutionException { // init generators