001 /*
002 * Sonar, open source software quality management tool.
003 * Copyright (C) 2009 SonarSource SA
004 * mailto:contact AT sonarsource DOT com
005 *
006 * Sonar is free software; you can redistribute it and/or
007 * modify it under the terms of the GNU Lesser General Public
008 * License as published by the Free Software Foundation; either
009 * version 3 of the License, or (at your option) any later version.
010 *
011 * Sonar is distributed in the hope that it will be useful,
012 * but WITHOUT ANY WARRANTY; without even the implied warranty of
013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
014 * Lesser General Public License for more details.
015 *
016 * You should have received a copy of the GNU Lesser General Public
017 * License along with Sonar; if not, write to the Free Software
018 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02
019 */
020 package org.sonar.api;
021
022 /**
023 * CoreProperties is used to group various properties of Sonar as well
024 * as default values of configuration in a single place
025 *
026 * @since 1.11
027 */
028 public interface CoreProperties {
029
030 /* Global settings */
031 String PROJECT_BRANCH_PROPERTY = "sonar.branch";
032 String PROJECT_VERSION_PROPERTY = "sonar.projectVersion";
033
034 /**
035 * Value format is yyyy-MM-dd
036 */
037 String PROJECT_DATE_PROPERTY = "sonar.projectDate";
038 String PROJECT_LANGUAGE_PROPERTY = "sonar.language";
039 String DYNAMIC_ANALYSIS_PROPERTY = "sonar.dynamicAnalysis";
040 String PROJECT_EXCLUSIONS_PROPERTY = "sonar.exclusions";
041 String REUSE_RULES_CONFIGURATION_PROPERTY = "sonar.reuseExistingRulesConfiguration";
042
043
044 /* Checkstyle */
045 String CHECKSTYLE_PLUGIN = "checkstyle";
046
047 /* Cobertura */
048 String COBERTURA_PLUGIN = "cobertura";
049 String COBERTURA_REPORT_PATH_PROPERTY = "sonar.cobertura.reportPath";
050
051 /* Sonar Core */
052 String CORE_PLUGIN = "core";
053 String CORE_COVERAGE_PLUGIN_PROPERTY = "sonar.core.codeCoveragePlugin";
054 String CORE_IMPORT_SOURCES_PROPERTY = "sonar.importSources";
055 boolean CORE_IMPORT_SOURCES_DEFAULT_VALUE = true;
056 String CORE_SKIPPED_MODULES_PROPERTY = "sonar.skippedModules";
057 String CORE_RULE_WEIGHTS_PROPERTY = "sonar.core.rule.weight";
058 String CORE_RULE_WEIGHTS_DEFAULT_VALUE = "INFO=0;MINOR=1;MAJOR=3;CRITICAL=5;BLOCKER=10";
059 String CORE_TENDENCY_DEPTH_PROPERTY = "tendency.depth";
060 int CORE_TENDENCY_DEPTH_DEFAULT_VALUE = 30;
061 String CORE_FORCE_AUTHENTICATION_PROPERTY = "sonar.forceAuthentication";
062 boolean CORE_FORCE_AUTHENTICATION_DEFAULT_VALUE = false;
063 String CORE_ALLOW_USERS_TO_SIGNUP_PROPERTY = "sonar.allowUsersToSignUp";
064 String CORE_DEFAULT_GROUP = "sonar.defaultGroup";
065 String CORE_DEFAULT_GROUP_DEFAULT_VALUE = "sonar-users";
066 boolean CORE_ALLOW_USERS_TO_SIGNUP_DEAULT_VALUE = false;
067 String CORE_AUTHENTICATOR_CLASS = "sonar.authenticator.class";
068 String CORE_AUTHENTICATOR_IGNORE_STARTUP_FAILURE = "sonar.authenticator.ignoreStartupFailure";
069 String CORE_AUTHENTICATOR_CREATE_USERS = "sonar.authenticator.createUsers";
070
071 /* CPD */
072 String CPD_PLUGIN = "cpd";
073 String CPD_MINIMUM_TOKENS_PROPERTY = "sonar.cpd.minimumTokens";
074 int CPD_MINIMUM_TOKENS_DEFAULT_VALUE = 100;
075 String CPD_IGNORE_LITERALS_PROPERTY = "sonar.cpd.ignore_literals";
076 String CPD_IGNORE_LITERALS_DEFAULT_VALUE = "true";
077 String CPD_IGNORE_IDENTIFIERS_PROPERTY = "sonar.cpd.ignore_identifiers";
078 String CPD_IGNORE_IDENTIFIERS_DEFAULT_VALUE = "false";
079 String CPD_SKIP_PROPERTY = "sonar.cpd.skip";
080
081 /* Design */
082 String DESIGN_SKIP_DESIGN_PROPERTY = "sonar.skipDesign";
083 boolean DESIGN_SKIP_DESIGN_DEFAULT_VALUE = false;
084
085 /* Findbugs */
086 String FINDBUGS_PLUGIN = "findbugs";
087 String FINDBUGS_EFFORT_PROPERTY = "sonar.findbugs.effort";
088 String FINDBUGS_EFFORT_DEFAULT_VALUE = "Default";
089 String FINDBUGS_MAXHEAP_PROPERTY = "sonar.findbugs.maxHeap";
090 String FINDBUGS_TIMEOUT_PROPERTY = "sonar.findbugs.timeout";
091 int FINDBUGS_MAXHEAP_DEFAULT_VALUE = 512;
092
093 /* Google Analytics */
094 String GOOGLE_ANALYTICS_PLUGIN = "google-analytics";
095 String GOOGLE_ANALYTICS_ACCOUNT_PROPERTY = "sonar.google-analytics.account";
096
097 /* PMD */
098 String PMD_PLUGIN = "pmd";
099
100 /* Squid */
101 String SQUID_PLUGIN = "squid";
102 String SQUID_ANALYSE_ACCESSORS_PROPERTY = "sonar.squid.analyse.property.accessors";
103 boolean SQUID_ANALYSE_ACCESSORS_DEFAULT_VALUE = true;
104
105 /* Surefire */
106 String SUREFIRE_PLUGIN = "surefire";
107 String SUREFIRE_REPORTS_PATH_PROPERTY = "sonar.surefire.reportsPath";
108 }