# -------------------------------------------------------------------
# Copyright 2001-2004 The Apache Software Foundation.
# 
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# 
#      http://www.apache.org/licenses/LICENSE-2.0
#  
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# -------------------------------------------------------------------

# -------------------------------------------------------------------
# D E F A U L T  M A V E N  P R O P E R T I E S
# -------------------------------------------------------------------
# These are the properties that we believe are immutable so we
# keep them apart from the project specific properties.
# -------------------------------------------------------------------

# Properties for the dashboard reactor
# ------------------------------------

maven.dashboard.basedir=${basedir}
maven.dashboard.includes=*/project.xml
maven.dashboard.excludes=**/target/**/project.xml
maven.dashboard.ignoreFailures=false

# Generated dashboard xml data file
maven.dashboard.report.xml = ${maven.build.dir}/dashboard-data.xml

# Generated dashboard main report xdoc file name (without the extension). 
# Note: The value must not include any path as the xdoc will be 
# generated in ${maven.gen.docs}.
maven.dashboard.report.xdoc = dashboard-report

# Generated dashboard legend xdoc file name (without the extension). 
# Note: The value must not include any path as the xdoc will be 
# generated in ${maven.gen.docs}.
maven.dashboard.report.legend.xdoc = dashboard-report-legend

# Location of JSL template to generate the main report xdoc file
maven.dashboard.template = ${plugin.resources}/templates/dashboard.jsl

# Location of JSL template to generate the legend report xdoc file
maven.dashboard.template.legend = ${plugin.resources}/templates/legend.jsl

# Decide whether a call to dashboard:report will call the reactor
# on the child projects to generate individual dashboard data. If you
# already using the multiproject project or the reactor, a better option
# is to add dashboard:report-single to the list of goals you're running.
# In which case, you'll need to set the following property to false
# (otherwise the reactor will be run again on your child projects).
maven.dashboard.runreactor = true

# If true, do not show projects for which gathered data is empty for all
# aggregators.
maven.dashboard.report.showempty = true

# Properties for gathering dashboard data for a single project
# ------------------------------------------------------------

# Location of default dashboard aggregators
maven.dashboard.aggregators.dir = ${plugin.resources}/aggregators

# Comma-separated list of aggregators to use
maven.dashboard.aggregators = cserrors,cswarnings,clovertpc,cloverloc,cloverncloc

# Generated dashboard data for a single project
maven.dashboard.report.single = ${maven.build.dir}/dashboard-single.xml

# Decide whether to call goals associated with report types or not
maven.dashboard.rungoals = true

# Default aggregators
# -------------------

# Properties for the Checkstyle error/warning aggregator (all errors/warnings)
maven.dashboard.aggregator.csall.script = ${maven.dashboard.aggregators.dir}/csall.jelly
maven.dashboard.aggregator.csall.artifact = ${maven.build.dir}/checkstyle-raw-report.xml
maven.dashboard.aggregator.csall.label = CS err/warn
maven.dashboard.aggregator.csall.goal = checkstyle
maven.dashboard.aggregator.csall.description = Number of Checkstyle errors and warnings

# Properties for the Checkstyle error aggregator (only errors)
maven.dashboard.aggregator.cserrors.script = ${maven.dashboard.aggregators.dir}/cserrors.jelly
maven.dashboard.aggregator.cserrors.artifact = ${maven.build.dir}/checkstyle-raw-report.xml
maven.dashboard.aggregator.cserrors.label = CS errors
maven.dashboard.aggregator.cserrors.goal = checkstyle
maven.dashboard.aggregator.cserrors.description = Number of Checkstyle errors

# Properties for the Checkstyle warning aggregator (only warnings)
maven.dashboard.aggregator.cswarnings.script = ${maven.dashboard.aggregators.dir}/cswarnings.jelly
maven.dashboard.aggregator.cswarnings.artifact = ${maven.build.dir}/checkstyle-raw-report.xml
maven.dashboard.aggregator.cswarnings.label = CS warnings
maven.dashboard.aggregator.cswarnings.goal = checkstyle
maven.dashboard.aggregator.cswarnings.description = Number of Checkstyle warnings

# Properties for the Clover TPC aggregator (TPC = Total Percent Coverage)
maven.dashboard.aggregator.clovertpc.script = ${maven.dashboard.aggregators.dir}/clovertpc.jelly
maven.dashboard.aggregator.clovertpc.artifact = ${maven.build.dir}/clover.xml
maven.dashboard.aggregator.clovertpc.label = Clover TPC
maven.dashboard.aggregator.clovertpc.goal = clover
maven.dashboard.aggregator.clovertpc.description = Number of test coverage percentage

# Properties for the Clover LOC aggregator (LOC = Line Of Code)
maven.dashboard.aggregator.cloverloc.script = ${maven.dashboard.aggregators.dir}/cloverloc.jelly
maven.dashboard.aggregator.cloverloc.artifact = ${maven.build.dir}/clover.xml
maven.dashboard.aggregator.cloverloc.label = Clover LOC
maven.dashboard.aggregator.cloverloc.goal = clover
maven.dashboard.aggregator.cloverloc.description = Number of line of code (including comments)

# Properties for the Clover NCLOC aggregator (NCLOC = Non Comment Line Of Code)
maven.dashboard.aggregator.cloverncloc.script = ${maven.dashboard.aggregators.dir}/cloverncloc.jelly
maven.dashboard.aggregator.cloverncloc.artifact = ${maven.build.dir}/clover.xml
maven.dashboard.aggregator.cloverncloc.label = Clover NCLOC
maven.dashboard.aggregator.cloverncloc.goal = clover
maven.dashboard.aggregator.cloverncloc.description = Number of non-commented lines of code

# Properties for the JUnit Test aggregator 
maven.dashboard.aggregator.junittests.script = ${maven.dashboard.aggregators.dir}/junittests.jelly
maven.dashboard.aggregator.junittests.artifact = ${maven.build.dir}/TESTS-TestSuites.xml
maven.dashboard.aggregator.junittests.label = JUnit Tests
maven.dashboard.aggregator.junittests.goal = junit-report:report
maven.dashboard.aggregator.junittests.description = Number of JUnit tests

# Properties for the JUnit Failures aggregator 
maven.dashboard.aggregator.junitfailures.script = ${maven.dashboard.aggregators.dir}/junitfailures.jelly
maven.dashboard.aggregator.junitfailures.artifact = ${maven.build.dir}/TESTS-TestSuites.xml
maven.dashboard.aggregator.junitfailures.label = JUnit Failures
maven.dashboard.aggregator.junitfailures.goal = junit-report:report
maven.dashboard.aggregator.junitfailures.description = Number of JUnit test failures

# Properties for the JUnit Errors aggregator 
maven.dashboard.aggregator.juniterrors.script = ${maven.dashboard.aggregators.dir}/juniterrors.jelly
maven.dashboard.aggregator.juniterrors.artifact = ${maven.build.dir}/TESTS-TestSuites.xml
maven.dashboard.aggregator.juniterrors.label = JUnit Errors
maven.dashboard.aggregator.juniterrors.goal = junit-report:report
maven.dashboard.aggregator.juniterrors.description = Number of JUnit test errors

# Properties for the JUnit Pass Rate  aggregator 
maven.dashboard.aggregator.junitpassrate.script = ${maven.dashboard.aggregators.dir}/junitpassrate.jelly
maven.dashboard.aggregator.junitpassrate.artifact = ${maven.build.dir}/TESTS-TestSuites.xml
maven.dashboard.aggregator.junitpassrate.label = JUnit Pass Rate
maven.dashboard.aggregator.junitpassrate.goal = junit-report:report
maven.dashboard.aggregator.junitpassrate.description = Percentage of JUnit tests that have passed vs tests in error or failed
