001///////////////////////////////////////////////////////////////////////////////////////////////
002// checkstyle: Checks Java source code and other text files for adherence to a set of rules.
003// Copyright (C) 2001-2024 the original author or authors.
004//
005// This library is free software; you can redistribute it and/or
006// modify it under the terms of the GNU Lesser General Public
007// License as published by the Free Software Foundation; either
008// version 2.1 of the License, or (at your option) any later version.
009//
010// This library is distributed in the hope that it will be useful,
011// but WITHOUT ANY WARRANTY; without even the implied warranty of
012// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
013// Lesser General Public License for more details.
014//
015// You should have received a copy of the GNU Lesser General Public
016// License along with this library; if not, write to the Free Software
017// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
018///////////////////////////////////////////////////////////////////////////////////////////////
019
020package com.puppycrawl.tools.checkstyle.meta;
021
022/** Simple POJO class module's property details. */
023public final class ModulePropertyDetails {
024
025    /** Name of property. */
026    private String name;
027
028    /** Type of property. */
029    private String type;
030
031    /** Default value of property. */
032    private String defaultValue;
033
034    /**
035     * This property is java type that plugins can use to validate user input, it is used when
036     * 'type' field is "String". It is used for special cases such as regexp and tokenSet.
037     */
038    private String validationType;
039
040    /** Description of property. */
041    private String description;
042
043    /**
044     * Get name of property.
045     *
046     * @return name of property
047     */
048    public String getName() {
049        return name;
050    }
051
052    /**
053     * Set name of property.
054     *
055     * @param name name of property
056     */
057    public void setName(String name) {
058        this.name = name;
059    }
060
061    /**
062     * Get type of property.
063     *
064     * @return property type
065     */
066    public String getType() {
067        return type;
068    }
069
070    /**
071     * Set property type.
072     *
073     * @param type property type
074     */
075    public void setType(String type) {
076        this.type = type;
077    }
078
079    /**
080     * Get default value of property.
081     *
082     * @return default value of property
083     */
084    public String getDefaultValue() {
085        return defaultValue;
086    }
087
088    /**
089     * Set default value of property.
090     *
091     * @param defaultValue default value of property
092     */
093    public void setDefaultValue(String defaultValue) {
094        this.defaultValue = defaultValue;
095    }
096
097    /**
098     * Get validation type of property.
099     *
100     * @return validation type of property
101     */
102    public String getValidationType() {
103        return validationType;
104    }
105
106    /**
107     * Set validation type of property.
108     *
109     * @param validationType validation type of property
110     */
111    public void setValidationType(String validationType) {
112        this.validationType = validationType;
113    }
114
115    /**
116     * Get description of property.
117     *
118     * @return property description
119     */
120    public String getDescription() {
121        return description;
122    }
123
124    /**
125     * Set description of property.
126     *
127     * @param description property description
128     */
129    public void setDescription(String description) {
130        this.description = description;
131    }
132}