net.sf.statcvs.output
Class ConfigurationOptions

java.lang.Object
  extended by net.sf.statcvs.output.ConfigurationOptions

public class ConfigurationOptions
extends Object

Class for storing all command line parameters. The parameters are set by the Main.main(java.lang.String[]) method. Interested classes can read all parameter values from here. TODO: Should be moved to more appropriate package and made non-public

Version:
$Id: ConfigurationOptions.java,v 1.40 2009/08/21 23:06:51 benoitx Exp $
Author:
jentzsch

Constructor Summary
ConfigurationOptions()
           
 
Method Summary
static void addNonDeveloperLogin(String loginName)
          Excludes a login name from charts and reports that compare several developers.
static String getCharSet()
           
static String getCheckedOutDirectory()
          Method getCheckedOutDirectory.
static Boolean getConfigBooleanProperty(String propName, String fallBackPropName, Boolean defaultValue)
          Return a Boolean prop.
static Color getConfigColorProperty(String propName, Color defaultValue)
          Return a String prop.
static Color getConfigColorProperty(String propName, String fallBackPropName, Color defaultValue)
          Return a Color prop.
static Float getConfigFloatProperty(String propName, String fallBackPropName, Float defaultValue)
          Return a Float prop.
static Float getConfigIntegerProperty(String propName, Float defaultValue)
          Return a Float prop.
static Integer getConfigIntegerProperty(String propName, Integer defaultValue)
          Return a Integer prop.
static Integer getConfigIntegerProperty(String propName, String fallBackPropName, Integer defaultValue)
          Return a Integer prop.
static Properties getConfigProperties()
          The config properties.
static List getConfigStringListProperty(String propName, String defaultValue)
          Return a list of String prop.
static String getConfigStringProperty(String propName, String defaultValue)
          Return a String prop.
static String getConfigStringProperty(String propName, String fallBackPropName, String defaultValue)
           
static CssHandler getCssHandler()
          returns the CssHandler
static FilePatternMatcher getExcludePattern()
           
static String getFooterUrl()
           
static String getHeaderUrl()
           
static FilePatternMatcher getIncludePattern()
           
static String getLogFileName()
          Method getLogfilename.
static String getLoggingProperties()
          Gets the name of the logging properties file
static MarkupSyntax getMarkupSyntax()
           
static Collection getNonDeveloperLogins()
          Gets login names that should be excluded from charts and reports that compare several developers.
static String getNotes()
          Returns the report notes (from "-notes filename" switch) or null if not specified
static String getOutputDir()
          Returns the outputDir.
static String getOutputFormat()
           
static String getProjectName()
          Method getProjectName.
static Pattern getSymbolicNamesPattern()
           
static BugTracker getWebBugtracker()
           
static WebRepositoryIntegration getWebRepository()
          Returns a WebRepositoryIntegration object if the user has specified a URL to one.
static boolean isEnableTwitterButton()
           
static void setBugzillaUrl(String bugzillaUrl)
           
static void setCharSet(String cs)
           
static void setCheckedOutDirectory(String checkedOutDirectory)
          Sets the checkedOutDirectory.
static void setChoraURL(String url)
          Sets the URL to a Chora web-based CVS browser.
static void setConfigFile(String propertiesFilename)
          Set the config file that may contain user details.
static void setCssFile(String cssFile)
          Sets the cssFile.
static void setCvswebURL(String url)
          Sets the URL to a cvsweb web-based CVS browser.
static void setDebugLogging()
          Sets the logging level to debug
static void setDefaultCssFile(String cssName)
          Allow change between css that are shipped with the tool.
static void setEnableTwitterButton(boolean value)
          Enable/disable the Twitter "Tweet This" Buttons.
static void setExcludePattern(String patternList)
          Sets a file exclude pattern list.
static void setFooterUrl(String footerUrl)
           
static void setHeaderUrl(String headerUrl)
           
static void setIncludePattern(String patternList)
          Sets a file include pattern list.
static void setJCVSWebURL(String url)
          Sets the URL to a JCVSWeb web-based CVS browser.
static void setLogFileName(String logFileName)
          Sets the logFileName.
static void setMantisUrl(String mantisUrl)
           
static void setNotesFile(String notesFile)
          Sets the name of the notes file.
static void setOutputDir(String outputDir)
          Sets the outputDir.
static void setOutputFormat(String outputFormat)
           
static void setProjectName(String projectName)
          Sets a project title to be used in the reports
static void setSymbolicNamesPattern(String symbolicNamesPattern)
           
static void setVerboseLogging()
          Sets the logging level to verbose
static void setViewCvsURL(String url)
          Sets the URL to a ViewCVS web-based CVS browser.
static void setViewTracURL(String url)
          Sets the URL to a Trac web-based SVN browser and issue tracking.
static void setViewVcURL(String url)
          Sets the URL to a ViewVC web-based CVS/SVN browser.
static void setWebRepositoryIntegration(WebRepositoryIntegration webRepo)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConfigurationOptions

public ConfigurationOptions()
Method Detail

getCharSet

public static String getCharSet()

setCharSet

public static void setCharSet(String cs)

getCssHandler

public static CssHandler getCssHandler()
returns the CssHandler

Returns:
the CssHandler

getProjectName

public static String getProjectName()
Method getProjectName.

Returns:
String name of the project

getCheckedOutDirectory

public static String getCheckedOutDirectory()
Method getCheckedOutDirectory.

Returns:
String name of the checked out directory

getLogFileName

public static String getLogFileName()
Method getLogfilename.

Returns:
String name of the logfile to be parsed

getOutputDir

public static String getOutputDir()
Returns the outputDir.

Returns:
String output Directory

getNotes

public static String getNotes()
Returns the report notes (from "-notes filename" switch) or null if not specified

Returns:
the report notes

getWebRepository

public static WebRepositoryIntegration getWebRepository()
Returns a WebRepositoryIntegration object if the user has specified a URL to one. null otherwise.

Returns:
the web repository

setCheckedOutDirectory

public static void setCheckedOutDirectory(String checkedOutDirectory)
                                   throws ConfigurationException
Sets the checkedOutDirectory.

Parameters:
checkedOutDirectory - The checkedOutDirectory to set
Throws:
ConfigurationException - if directory does not exist

setCssFile

public static void setCssFile(String cssFile)
                       throws ConfigurationException
Sets the cssFile. Currently, the css file can be any local file or a HTTP URL. If it is a local file, a copy will be included in the output directory. If this method is never called, a default CSS file will be generated in the output directory.

Parameters:
cssFile - The cssFile to set
Throws:
ConfigurationException - if the specified CSS file can not be accessed from local file system or from URL source, or if the specified CSS file is local and does not exist

setLogFileName

public static void setLogFileName(String logFileName)
                           throws ConfigurationException
Sets the logFileName.

Parameters:
logFileName - The logFileName to set
Throws:
ConfigurationException - if the file does not exist

setOutputDir

public static void setOutputDir(String outputDir)
                         throws ConfigurationException
Sets the outputDir.

Parameters:
outputDir - The outputDir to set
Throws:
ConfigurationException - if the output directory cannot be created

setNotesFile

public static void setNotesFile(String notesFile)
                         throws ConfigurationException
Sets the name of the notes file. The notes file will be included on the index page of the output. It must contain a valid block-level HTML fragment (for example "<p>Some notes</p>")

Parameters:
notesFile - a local filename
Throws:
ConfigurationException - if the file is not found or can't be read

setViewCvsURL

public static void setViewCvsURL(String url)
Sets the URL to a ViewCVS web-based CVS browser. This must be the URL at which the checked-out module's root can be viewed in ViewCVS.

Parameters:
url - URL to a ViewCVS repository

setCvswebURL

public static void setCvswebURL(String url)
Sets the URL to a cvsweb web-based CVS browser. This must be the URL at which the checked-out module's root can be viewed in cvsweb.

Parameters:
url - URL to a cvsweb repository

setChoraURL

public static void setChoraURL(String url)
Sets the URL to a Chora web-based CVS browser. This must be the URL at which the checked-out module's root can be viewed in Chora.

Parameters:
url - URL to a cvsweb repository

setJCVSWebURL

public static void setJCVSWebURL(String url)
Sets the URL to a JCVSWeb web-based CVS browser. This must be the URL at which the checked-out module's root can be viewed in JCVSWeb.

Parameters:
url - URL to a JCVSWeb repository

setViewVcURL

public static void setViewVcURL(String url)
Sets the URL to a ViewVC web-based CVS/SVN browser. This must be the URL at which the checked-out module's root can be viewed in ViewVC.

Parameters:
url - URL to a ViewVC repository

setViewTracURL

public static void setViewTracURL(String url)
Sets the URL to a Trac web-based SVN browser and issue tracking. This must be the URL at which the checked-out module's root can be viewed in Trac

Parameters:
url - URL to a Trac website

setProjectName

public static void setProjectName(String projectName)
Sets a project title to be used in the reports

Parameters:
projectName - The project title to be used in the reports

getLoggingProperties

public static String getLoggingProperties()
Gets the name of the logging properties file

Returns:
the name of the logging properties file

setVerboseLogging

public static void setVerboseLogging()
Sets the logging level to verbose


setDebugLogging

public static void setDebugLogging()
Sets the logging level to debug


setIncludePattern

public static void setIncludePattern(String patternList)
Sets a file include pattern list. Only files matching one of the patterns will be included in the analysis.

Parameters:
patternList - a list of Ant-style wildcard patterns, seperated by : or ;
See Also:
FilePatternMatcher

setExcludePattern

public static void setExcludePattern(String patternList)
Sets a file exclude pattern list. Files matching any of the patterns will be excluded from the analysis.

Parameters:
patternList - a list of Ant-style wildcard patterns, seperated by : or ;
See Also:
FilePatternMatcher

getExcludePattern

public static FilePatternMatcher getExcludePattern()
Returns:
Returns the excludePattern.

getIncludePattern

public static FilePatternMatcher getIncludePattern()
Returns:
Returns the includePattern.

setSymbolicNamesPattern

public static void setSymbolicNamesPattern(String symbolicNamesPattern)
                                    throws ConfigurationException
Throws:
ConfigurationException

getSymbolicNamesPattern

public static Pattern getSymbolicNamesPattern()

setBugzillaUrl

public static void setBugzillaUrl(String bugzillaUrl)

setMantisUrl

public static void setMantisUrl(String mantisUrl)

getWebBugtracker

public static BugTracker getWebBugtracker()

setOutputFormat

public static void setOutputFormat(String outputFormat)
                            throws ConfigurationException
Throws:
ConfigurationException

getOutputFormat

public static String getOutputFormat()

getMarkupSyntax

public static MarkupSyntax getMarkupSyntax()

setWebRepositoryIntegration

public static void setWebRepositoryIntegration(WebRepositoryIntegration webRepo)

setDefaultCssFile

public static void setDefaultCssFile(String cssName)
Allow change between css that are shipped with the tool.

Parameters:
cssName - statcvs.css or objectlab-statcvs-xdoc.css

addNonDeveloperLogin

public static void addNonDeveloperLogin(String loginName)
Excludes a login name from charts and reports that compare several developers. Useful to reduce the noise from admin accounts.

Parameters:
loginName - A login name

getNonDeveloperLogins

public static Collection getNonDeveloperLogins()
Gets login names that should be excluded from charts and reports that compare several developers.


setConfigFile

public static void setConfigFile(String propertiesFilename)
                          throws ConfigurationException
Set the config file that may contain user details.

Parameters:
propertiesFilename -
Throws:
ConfigurationException

getConfigProperties

public static Properties getConfigProperties()
The config properties.

Returns:

getConfigStringProperty

public static String getConfigStringProperty(String propName,
                                             String defaultValue)
Return a String prop.

Parameters:
propName -
defaultValue -
Returns:

getConfigStringListProperty

public static List getConfigStringListProperty(String propName,
                                               String defaultValue)
Return a list of String prop.

Parameters:
propName -
defaultValue -
Returns:
List (could be empty)

getConfigStringProperty

public static String getConfigStringProperty(String propName,
                                             String fallBackPropName,
                                             String defaultValue)

getConfigIntegerProperty

public static Integer getConfigIntegerProperty(String propName,
                                               Integer defaultValue)
Return a Integer prop.

Parameters:
propName -
defaultValue -
Returns:

getConfigIntegerProperty

public static Float getConfigIntegerProperty(String propName,
                                             Float defaultValue)
Return a Float prop.

Parameters:
propName -
defaultValue -
Returns:

getConfigColorProperty

public static Color getConfigColorProperty(String propName,
                                           Color defaultValue)
Return a String prop.

Parameters:
propName -
defaultValue -
Returns:

getConfigIntegerProperty

public static Integer getConfigIntegerProperty(String propName,
                                               String fallBackPropName,
                                               Integer defaultValue)
Return a Integer prop.

Parameters:
propName -
defaultValue -
Returns:

getConfigFloatProperty

public static Float getConfigFloatProperty(String propName,
                                           String fallBackPropName,
                                           Float defaultValue)
Return a Float prop.

Parameters:
propName -
defaultValue -
Returns:

getConfigBooleanProperty

public static Boolean getConfigBooleanProperty(String propName,
                                               String fallBackPropName,
                                               Boolean defaultValue)
Return a Boolean prop.

Parameters:
propName -
defaultValue -
Returns:

getConfigColorProperty

public static Color getConfigColorProperty(String propName,
                                           String fallBackPropName,
                                           Color defaultValue)
Return a Color prop.

Parameters:
propName -
defaultValue -
Returns:

setEnableTwitterButton

public static void setEnableTwitterButton(boolean value)
Enable/disable the Twitter "Tweet This" Buttons.

Parameters:
value -

isEnableTwitterButton

public static boolean isEnableTwitterButton()

getHeaderUrl

public static String getHeaderUrl()

setHeaderUrl

public static void setHeaderUrl(String headerUrl)

getFooterUrl

public static String getFooterUrl()

setFooterUrl

public static void setFooterUrl(String footerUrl)