## net.sf.statsvn.input
Class RepositoriesBuilder

    java.lang.Object
      net.sf.statsvn.input.RepositoriesBuilder

    public class RepositoriesBuilder

extends Object

This class receives information from the (@link net.sf.statsvn.input.SvnXmlRepositoriesFileHandler) to build a DOM-based XML structure containing the names of all repositories and associated line counts xml files. It then allows to retrieve the line counts XML file name for a given repository.

Version:
  $Id: RepositoriesBuilder.java 351 2008-03-28 18:46:26Z benoitx $
Author:
  Gunter Mussbacher <gunterm@site.uottawa.ca>

Constructor Summary
`RepositoriesBuilder()` Constructs the RepositoriesBuilder

Method Summary
`Element` `buildRepository(String uuid, String file)` Adds a repository to the DOM structure.
`void` `buildRoot()` Builds the DOM root.
`Document` `getDocument()` Returns the DOM object when building is complete.
`String` `getFileName(String uuid)` Retrieves the file name of the line counts xml file for a given repository.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### RepositoriesBuilder

    public RepositoriesBuilder()

  Constructs the RepositoriesBuilder

Method Detail

### buildRepository

    public Element buildRepository(String uuid,
                                   String file)

  Adds a repository to the DOM structure.

  Parameters:
    `uuid` - the uuid of the repository
    `file` - the filename for the XML line counts file

### buildRoot

    public void buildRoot()
                   throws ParserConfigurationException

  Builds the DOM root.

  Throws:
    `ParserConfigurationException`

### getFileName

    public String getFileName(String uuid)

  Retrieves the file name of the line counts xml file for a given repository. Creates a new file name if the line counts xml file does not exist. If the repositories xml file does not exist (i.e. the document is null), a new document is created.

  Parameters:
    `uuid` - the uuid of the repository
  Returns:
    the file name or "" if an unexpected error occurs

### getDocument

    public Document getDocument()

  Returns the DOM object when building is complete.

  Returns:
    the DOM document.