/*
* CDDL HEADER START
*
* The contents of this file are subject to the terms of the
* Common Development and Distribution License, Version 1.0 only
* (the "License"). You may not use this file except in compliance
* with the License.
*
* You can obtain a copy of the license at legal-notices/CDDLv1_0.txt
* See the License for the specific language governing permissions
* and limitations under the License.
*
* When distributing Covered Code, include this CDDL HEADER in each
* file and include the License file at legal-notices/CDDLv1_0.txt.
* If applicable, add the following below this CDDL HEADER, with the
* fields enclosed by brackets "[]" replaced with your own identifying
* information:
* Portions Copyright [yyyy] [name of copyright owner]
*
* CDDL HEADER END
*
*
* Copyright 2008 Sun Microsystems, Inc.
*/
/**
* This class provides an implementation of an Ant task that may be used to
* determine the current Subversion revision number of the current working
* copy. The value of the revision number will be stored in an Ant property.
*/
public class GetSubversionRevision
extends Task
{
// The name of the property in which the revision number should be set.
// The path to the root of the Subversion workspace for which to retrieve the
// revision number.
// The svn client manager. Required by svnkit 1.2.x
/**
* Specifies the name of the Ant property into which the Subversion revision
* number will be stored.
*
* @param propertyName The name of the Ant property into which the
* Subversion revision number will be stored.
*/
{
this.propertyName = propertyName;
}
/**
* Specifies the path to the root of the Subversion workspace for which to
* retrieve the revision number.
*
* @param workspace The path to the root of the Subversion workspace for
* which to retrieve the revision number.
*/
{
}
/**
* Performs the appropriate processing needed for this task. In this case,
* it uses SVNKit to identify the current revision number for the local
* workspace and store it in a specified property.
*/
@Override()
public void execute()
{
{
throw new BuildException("ERROR: No property was specified for " +
"storing the revision number value.");
}
{
}
else
{
}
try
{
{
"revision number for current workspace.");
}
else
{
}
}
catch (SVNException svnException)
{
"revision number for current workspace: " +
}
}
}