org.apache.maven.svnlib
Class SvnChangeLogGenerator

java.lang.Object
  extended byorg.apache.maven.changelog.AbstractChangeLogGenerator
      extended byorg.apache.maven.svnlib.SvnChangeLogGenerator
All Implemented Interfaces:
ChangeLogGenerator, org.apache.tools.ant.taskdefs.ExecuteStreamHandler

public class SvnChangeLogGenerator
extends AbstractChangeLogGenerator

A Subversion implementation of the ChangeLog interface.

Version:
$Id: SvnChangeLogGenerator.java 532339 2007-04-25 12:28:56Z ltheussl $
Author:
Glenn McAllister, Jeff Martin, Jason van Zyl, dIon Gillard, Stefan Bodewig, Peter Donald, Pete Kazmier, Daniel Rall

Field Summary
 
Fields inherited from class org.apache.maven.changelog.AbstractChangeLogGenerator
base, changeLogExecutor, clParser, commentFormat, dateRange, entries, errorReader, in, logEnd, logStart, tag, type
 
Constructor Summary
SvnChangeLogGenerator()
           
 
Method Summary
protected  String getScmDateArgument(Date before, Date to)
          Construct the svn command-line argument that is used to specify the appropriate date range.
protected  org.apache.tools.ant.types.Commandline getScmLogCommand()
          Constructs the appropriate command line to execute the subversion log command whose output is then later parsed.
protected  String getScmTagArgument(String tagStart, String tagEnd)
          Construct the command-line argument that is passed to the scm client to specify the appropriate tag.
protected  void handleParserException(IOException ioe)
          Handle ChangeLogParser IOExceptions.
 
Methods inherited from class org.apache.maven.changelog.AbstractChangeLogGenerator
cleanup, getCommentFormat, getConnection, getEntries, getLogEnd, getLogStart, init, logExecute, setCommentFormat, setConnection, setDateRange, setDateRangeFromAbsoluteDate, setLogEnd, setLogStart, setProcessErrorStream, setProcessInputStream, setProcessOutputStream, start, stop
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SvnChangeLogGenerator

public SvnChangeLogGenerator()
Method Detail

getScmLogCommand

protected org.apache.tools.ant.types.Commandline getScmLogCommand()
Constructs the appropriate command line to execute the subversion log command whose output is then later parsed.

Specified by:
getScmLogCommand in class AbstractChangeLogGenerator
Returns:
the cvs command line to be executed.

getScmDateArgument

protected String getScmDateArgument(Date before,
                                    Date to)
Construct the svn command-line argument that is used to specify the appropriate date range. This date option takes the format of -r{start}:{end} in the case of Subversion.

Specified by:
getScmDateArgument in class AbstractChangeLogGenerator
Parameters:
before - The starting point.
to - The ending point.
Returns:
A string that can be used to specify a date to a scm system.

getScmTagArgument

protected String getScmTagArgument(String tagStart,
                                   String tagEnd)
Description copied from class: AbstractChangeLogGenerator
Construct the command-line argument that is passed to the scm client to specify the appropriate tag.

Specified by:
getScmTagArgument in class AbstractChangeLogGenerator
Parameters:
tagStart - The tag name for the start of the log (log shouldn't actually contain the tag).
tagEnd - The tag name for the end of the log (the log can contain this tag), or null to log all changes since tagStart.
Returns:
A string that can be used to specify the tag range to a scm system.
See Also:
AbstractChangeLogGenerator.getScmTagArgument(String, String)

handleParserException

protected void handleParserException(IOException ioe)
                              throws IOException
Handle ChangeLogParser IOExceptions.

Overrides:
handleParserException in class AbstractChangeLogGenerator
Parameters:
ioe - The IOException thrown.
Throws:
IOException - If the handler doesn't wish to handle the exception.


Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.