View Javadoc
1   /*
2    * Cloudformation Plugin for SonarQube
3    * Copyright (C) 2019 James Pether Sörling
4    * james@hack23.com
5    *
6    * This program is free software; you can redistribute it and/or
7    * modify it under the terms of the GNU Lesser General Public
8    * License as published by the Free Software Foundation; either
9    * version 3 of the License, or (at your option) any later version.
10   *
11   * This program is distributed in the hope that it will be useful,
12   * but WITHOUT ANY WARRANTY; without even the implied warranty of
13   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14   * Lesser General Public License for more details.
15   *
16   * You should have received a copy of the GNU Lesser General Public License
17   * along with this program; if not, write to the Free Software Foundation,
18   * Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
19   */
20  package com.hack23.sonar.cloudformation;
21  
22  import java.util.Arrays;
23  import java.util.List;
24  
25  import org.sonar.api.config.PropertyDefinition;
26  import org.sonar.api.resources.Qualifiers;
27  
28  import com.hack23.sonar.cloudformation.reports.process.CloudformationConstants;
29  
30  /**
31   * The Class CloudformationProperties.
32   */
33  public final class CloudformationProperties {
34  
35  	/**
36  	 * Instantiates a new cloudformation properties.
37  	 */
38  	private CloudformationProperties() {
39  		// only statics
40  	}
41  
42  	/**
43  	 * Gets the properties.
44  	 *
45  	 * @return the properties
46  	 */
47  	public static List<PropertyDefinition> getProperties() {
48  		return Arrays.asList(PropertyDefinition.builder(CloudformationConstants.CFN_NAG_REPORT_FILES_PROPERTY)
49  				.subCategory("Paths").name(CloudformationConstants.CFN_NAG_REPORT_FILES_PROPERTY)
50  				.description("path to the '.nag or .nagscan' files").onQualifiers(Qualifiers.PROJECT).defaultValue("")
51  				.build(),PropertyDefinition.builder(CloudformationConstants.CHECKOV_REPORT_FILES_PROPERTY)
52  				.subCategory("Paths").name(CloudformationConstants.CHECKOV_REPORT_FILES_PROPERTY)
53  				.description("path to the 'checkov-report' files").onQualifiers(Qualifiers.PROJECT).defaultValue("")
54  				.build());
55  	}
56  }