/*
* GraphicsCodeGenAntTask.java
*
* Created on March 3, 2007, 9:31 PM
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package com.kitfox.salamander.parser;
import java.io.File;
import java.util.ArrayList;
import javax.imageio.ImageIO;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.FileScanner;
import org.apache.tools.ant.Task;
import org.apache.tools.ant.types.FileSet;
/**
* This ant task examines a directory hierarchy containing .xml files and
* for the XML files rooted in the GraphicsCodeGen.GRAPHICS_NS namespace,
* causes code generation to be run. Task will only update code that is missing
* or out of date to minimize processing time.
*
*
* <graphicsCodeGeneration>
* <fileset dir="${root.dir}">
* <include name="com/kitfox/monsters/** / *"/>
* </fileset>
* <fileset dir="${dir2}">
* </fileset>
* </graphicsCodeGeneration>
*
*
* @author kitfox
*/
public class SVGParserAntTask extends Task
{
// Path examinePath;
private ArrayList filesets = new ArrayList();
/** Creates a new instance of GraphicsCodeGenAntTask */
public SVGParserAntTask()
{
}
/**
* Adds a set of files.
*/
public void addFileset(FileSet set)
{
filesets.add(set);
}
/**
* The examine path should be a subset of the classpath and include all the
* classes that should be examined for possible inclusion in the services list.
*/
// public Path createExaminePath() throws BuildException
// {
// if (examinePath == null)
// {
// examinePath = new Path(getProject());
// return examinePath;
// }
// throw new BuildException("Only one examine path can be set");
// }
public void execute() throws BuildException
{
/*
//This is necessary for ImageIO to find all pluggable image readers on the
// classpath
ImageIO.scanForPlugins();
for (FileSet fileSet: filesets)
{
FileScanner scanner = fileSet.getDirectoryScanner(getProject());
String[] files = scanner.getIncludedFiles();
File dir = fileSet.getDir();
for (String fileName: files)
{
// if (!fileName.getName().endsWith(".xml")) continue;
File file = new File(dir, fileName);
//System.err.println("*****File " + file);
//Conditionally generate code
GraphicsCodeGen.generateCode(file, true);
}
}
*/
}
}