1 /////////////////////////////////////////////////////////////////////////////////////////////// 2 // checkstyle: Checks Java source code and other text files for adherence to a set of rules. 3 // Copyright (C) 2001-2025 the original author or authors. 4 // 5 // This library is free software; you can redistribute it and/or 6 // modify it under the terms of the GNU Lesser General Public 7 // License as published by the Free Software Foundation; either 8 // version 2.1 of the License, or (at your option) any later version. 9 // 10 // This library is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 // Lesser General Public License for more details. 14 // 15 // You should have received a copy of the GNU Lesser General Public 16 // License along with this library; if not, write to the Free Software 17 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 /////////////////////////////////////////////////////////////////////////////////////////////// 19 20 package com.puppycrawl.tools.checkstyle.meta; 21 22 /** Simple POJO class module's property details. */ 23 public final class ModulePropertyDetails { 24 25 /** Name of property. */ 26 private String name; 27 28 /** Type of property. */ 29 private String type; 30 31 /** Default value of property. */ 32 private String defaultValue; 33 34 /** 35 * This property is java type that plugins can use to validate user input, it is used when 36 * 'type' field is "String". It is used for special cases such as regexp and tokenSet. 37 */ 38 private String validationType; 39 40 /** Description of property. */ 41 private String description; 42 43 /** No-argument constructor. */ 44 public ModulePropertyDetails() { 45 // empty constructor 46 } 47 48 /** 49 * All-argument constructor. 50 * 51 * @param name name. 52 * @param type type. 53 * @param defaultValue default value. 54 * @param validationType validation type. 55 * @param description description. 56 */ 57 public ModulePropertyDetails(String name, String type, String defaultValue, 58 String validationType, String description) { 59 this.name = name; 60 this.type = type; 61 this.defaultValue = defaultValue; 62 this.validationType = validationType; 63 this.description = description; 64 } 65 66 /** 67 * Get name of property. 68 * 69 * @return name of property 70 */ 71 public String getName() { 72 return name; 73 } 74 75 /** 76 * Set name of property. 77 * 78 * @param name name of property 79 */ 80 public void setName(String name) { 81 this.name = name; 82 } 83 84 /** 85 * Get type of property. 86 * 87 * @return property type 88 */ 89 public String getType() { 90 return type; 91 } 92 93 /** 94 * Set property type. 95 * 96 * @param type property type 97 */ 98 public void setType(String type) { 99 this.type = type; 100 } 101 102 /** 103 * Get default value of property. 104 * 105 * @return default value of property 106 */ 107 public String getDefaultValue() { 108 return defaultValue; 109 } 110 111 /** 112 * Set default value of property. 113 * 114 * @param defaultValue default value of property 115 */ 116 public void setDefaultValue(String defaultValue) { 117 this.defaultValue = defaultValue; 118 } 119 120 /** 121 * Get validation type of property. 122 * 123 * @return validation type of property 124 */ 125 public String getValidationType() { 126 return validationType; 127 } 128 129 /** 130 * Set validation type of property. 131 * 132 * @param validationType validation type of property 133 */ 134 public void setValidationType(String validationType) { 135 this.validationType = validationType; 136 } 137 138 /** 139 * Get description of property. 140 * 141 * @return property description 142 */ 143 public String getDescription() { 144 return description; 145 } 146 147 /** 148 * Set description of property. 149 * 150 * @param description property description 151 */ 152 public void setDescription(String description) { 153 this.description = description; 154 } 155 }