net.sf.statcvs.input

Interface CvsLogBuilder

Known Implementing Classes:
Builder

public interface CvsLogBuilder

Interface for defining a Builder that constructs a data structure from a CVS logfile. CvsLogfileParser takes an instance of this interface and will call methods on the interface for every piece of data it encounters in the log.

First, buildModule(String) will be called with the name of the module. Then, buildFile(String,boolean,boolean,Map) will be called with the filename and other pieces of information of the first file in the log. Then, for every revision of this file, buildRevision(RevisionData) is called. The calls to buildFile and buildRevision are repeated for every file in the log.

The files are in no particular order. The revisions of one file are ordered by time, beginning with the most recent.

Version:
$Id: CvsLogBuilder.java,v 1.3 2008/04/02 11:22:15 benoitx Exp $
Authors:
Richard Cyganiak
Tammo van Lessen

Method Summary

abstract void
buildFile(String filename, boolean isBinary, boolean isInAttic, Map revBySymnames)
Starts building a new file.
abstract void
buildModule(String moduleName)
Starts building a module.
abstract void
buildRevision(RevisionData data)
Adds a revision to the last file that was built..

Method Details

buildFile

public abstract void buildFile(String filename,
                               boolean isBinary,
                               boolean isInAttic,
                               Map revBySymnames)
Starts building a new file. The files are not processed in any particular order.
Parameters:
filename - the file's name with path relative to the module, for example "path/file.txt"
isBinary - true if it's a binary file
isInAttic - true if the file is dead on the main branch
revBySymnames - maps revision (string) by symbolic name (string)

buildModule

public abstract void buildModule(String moduleName)
Starts building a module.
Parameters:
moduleName - the name of the module

buildRevision

public abstract void buildRevision(RevisionData data)
Adds a revision to the last file that was built.. The revisions are added in CVS logfile order, that is starting with the most recent one.
Parameters:
data - the revision