/** */
@Override
public void execute() throws Exception
{
SVNLogClient client = this.getTask().getSvnClient().getLogClient();
SVNRevision start = SVNRevision.parse(this.startRevision);
SVNRevision end = SVNRevision.parse(this.endRevision);
final StringBuilder logBuffer = new StringBuilder(1024);
if (this.url == null)
{
File filePath = new File(this.path);
this.getTask().log("log " + filePath.getCanonicalPath() + " " + start.toString() + ":" + end.toString());
client.doLog(new File[] { filePath }, end, start, end, this.stopOnCopy, this.discoverChangedPaths, this.includeMergedRevisions, this.limit, new String[] { }, this.getLogEntryHandler(logBuffer));
}
else
{
String path = (this.path == null || "".equals(this.path)) ? "/" : this.path;
this.getTask().log("log " + this.url + (("/".equals(path)) ? "" : path) + " " + start.toString() + ":" + end.toString());
client.doLog(SVNURL.parseURIDecoded(this.url), new String[] { path }, end, start, end, this.stopOnCopy, this.discoverChangedPaths, this.includeMergedRevisions, this.limit, new String[] { }, this.getLogEntryHandler(logBuffer));
}
logBuffer.append(ITEM_SEPARATOR + LINE_SEPARATOR);
this.getProject().setProperty(this.logProperty, logBuffer.toString());