package org.codehaus.mojo.buildinfo.ant;
import java.io.File;
import java.io.IOException;
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Project;
import org.apache.tools.ant.Task;
import org.codehaus.mojo.buildinfo.util.BuildInfoGenerator;
public class WriteBuildInfoTask
extends Task
{
private static final String SYSTEM_PROPERTIES_PROPERTY = "buildinfo.systemProperties";
private static final String OUTPUT_FILE_PROPERTY = "buildinfo.outputFile";
public void execute()
throws BuildException
{
Project project = getProject();
String systemPropertyKeys = project.getProperty( SYSTEM_PROPERTIES_PROPERTY );
File outputFile = new File( (String) project.getProperty( OUTPUT_FILE_PROPERTY ) );
BuildInfoGenerator buildInfoGenerator = new BuildInfoGenerator();
try
{
buildInfoGenerator.writeXml( systemPropertyKeys, outputFile );
}
catch ( IOException e )
{
throw new BuildException( "Error writing buildinfo XML file. Reason: " + e.getMessage(), e );
}
}
}