001/*
002 =================== DO NOT EDIT THIS FILE ====================
003 
004 Generated by Modello 2.4.0,
005 
006 any modifications will be overwritten.
007 
008 ==============================================================
009 */
010
011package org.apache.maven.tools.plugin.extractor.model;
012
013/**
014 * 
015 *         A parameter used by a mojo, and configurable from the
016 * command line or POM configuration sections.
017 *       
018 * 
019 * @version $Revision$ $Date$
020 */
021@SuppressWarnings( "all" )
022public class Parameter
023    implements java.io.Serializable
024{
025
026      //--------------------------/
027     //- Class/Member Variables -/
028    //--------------------------/
029
030    /**
031     * The parameter name.
032     */
033    private String name;
034
035    /**
036     * An alternate name for the parameter.
037     */
038    private String alias;
039
040    /**
041     * The JavaBeans property name to use to configure the mojo
042     * with this parameter.
043     */
044    private String property;
045
046    /**
047     * Whether this parameter is required.
048     */
049    private boolean required = false;
050
051    /**
052     * 
053     *             Whether this parameter can be directly edited.
054     * If false, this param is either derived from another POM
055     * element, or refers to a runtime instance of the build
056     * system.
057     *           
058     */
059    private boolean readonly = false;
060
061    /**
062     * 
063     *             The command-line reference to this parameter.
064     *           
065     */
066    private String expression;
067
068    /**
069     * 
070     *             An expression in the form ${instance.property}
071     * for extracting a value for this parameter, especially from
072     *             a runtime instance within the build system. (eg.
073     * ${project.build.directory} references
074     *             project.getBuild().getDirectory())
075     *           .
076     */
077    private String defaultValue;
078
079    /**
080     * 
081     *             The java type for this parameter.
082     *           
083     */
084    private String type;
085
086    /**
087     * The description for this parameter.
088     */
089    private String description;
090
091    /**
092     * A deprecation message for this mojo parameter.
093     */
094    private String deprecation;
095
096    /**
097     * Version when the parameter was added.
098     */
099    private String since;
100
101
102      //-----------/
103     //- Methods -/
104    //-----------/
105
106    /**
107     * Get an alternate name for the parameter.
108     * 
109     * @return String
110     */
111    public String getAlias()
112    {
113        return this.alias;
114    } //-- String getAlias()
115
116    /**
117     * Get an expression in the form ${instance.property} for
118     * extracting a value for this parameter, especially from
119     *             a runtime instance within the build system. (eg.
120     * ${project.build.directory} references
121     *             project.getBuild().getDirectory()).
122     * 
123     * @return String
124     */
125    public String getDefaultValue()
126    {
127        return this.defaultValue;
128    } //-- String getDefaultValue()
129
130    /**
131     * Get a deprecation message for this mojo parameter.
132     * 
133     * @return String
134     */
135    public String getDeprecation()
136    {
137        return this.deprecation;
138    } //-- String getDeprecation()
139
140    /**
141     * Get the description for this parameter.
142     * 
143     * @return String
144     */
145    public String getDescription()
146    {
147        return this.description;
148    } //-- String getDescription()
149
150    /**
151     * Get the command-line reference to this parameter.
152     * 
153     * @return String
154     */
155    public String getExpression()
156    {
157        return this.expression;
158    } //-- String getExpression()
159
160    /**
161     * Get the parameter name.
162     * 
163     * @return String
164     */
165    public String getName()
166    {
167        return this.name;
168    } //-- String getName()
169
170    /**
171     * Get the JavaBeans property name to use to configure the mojo
172     * with this parameter.
173     * 
174     * @return String
175     */
176    public String getProperty()
177    {
178        return this.property;
179    } //-- String getProperty()
180
181    /**
182     * Get version when the parameter was added.
183     * 
184     * @return String
185     */
186    public String getSince()
187    {
188        return this.since;
189    } //-- String getSince()
190
191    /**
192     * Get the java type for this parameter.
193     * 
194     * @return String
195     */
196    public String getType()
197    {
198        return this.type;
199    } //-- String getType()
200
201    /**
202     * Get whether this parameter can be directly edited. If false,
203     * this param is either derived from another POM element, or
204     * refers to a runtime instance of the build system.
205     * 
206     * @return boolean
207     */
208    public boolean isReadonly()
209    {
210        return this.readonly;
211    } //-- boolean isReadonly()
212
213    /**
214     * Get whether this parameter is required.
215     * 
216     * @return boolean
217     */
218    public boolean isRequired()
219    {
220        return this.required;
221    } //-- boolean isRequired()
222
223    /**
224     * Set an alternate name for the parameter.
225     * 
226     * @param alias a alias object.
227     */
228    public void setAlias( String alias )
229    {
230        this.alias = alias;
231    } //-- void setAlias( String )
232
233    /**
234     * Set an expression in the form ${instance.property} for
235     * extracting a value for this parameter, especially from
236     *             a runtime instance within the build system. (eg.
237     * ${project.build.directory} references
238     *             project.getBuild().getDirectory()).
239     * 
240     * @param defaultValue a defaultValue object.
241     */
242    public void setDefaultValue( String defaultValue )
243    {
244        this.defaultValue = defaultValue;
245    } //-- void setDefaultValue( String )
246
247    /**
248     * Set a deprecation message for this mojo parameter.
249     * 
250     * @param deprecation a deprecation object.
251     */
252    public void setDeprecation( String deprecation )
253    {
254        this.deprecation = deprecation;
255    } //-- void setDeprecation( String )
256
257    /**
258     * Set the description for this parameter.
259     * 
260     * @param description a description object.
261     */
262    public void setDescription( String description )
263    {
264        this.description = description;
265    } //-- void setDescription( String )
266
267    /**
268     * Set the command-line reference to this parameter.
269     * 
270     * @param expression a expression object.
271     */
272    public void setExpression( String expression )
273    {
274        this.expression = expression;
275    } //-- void setExpression( String )
276
277    /**
278     * Set the parameter name.
279     * 
280     * @param name a name object.
281     */
282    public void setName( String name )
283    {
284        this.name = name;
285    } //-- void setName( String )
286
287    /**
288     * Set the JavaBeans property name to use to configure the mojo
289     * with this parameter.
290     * 
291     * @param property a property object.
292     */
293    public void setProperty( String property )
294    {
295        this.property = property;
296    } //-- void setProperty( String )
297
298    /**
299     * Set whether this parameter can be directly edited. If false,
300     * this param is either derived from another POM element, or
301     * refers to a runtime instance of the build system.
302     * 
303     * @param readonly a readonly object.
304     */
305    public void setReadonly( boolean readonly )
306    {
307        this.readonly = readonly;
308    } //-- void setReadonly( boolean )
309
310    /**
311     * Set whether this parameter is required.
312     * 
313     * @param required a required object.
314     */
315    public void setRequired( boolean required )
316    {
317        this.required = required;
318    } //-- void setRequired( boolean )
319
320    /**
321     * Set version when the parameter was added.
322     * 
323     * @param since a since object.
324     */
325    public void setSince( String since )
326    {
327        this.since = since;
328    } //-- void setSince( String )
329
330    /**
331     * Set the java type for this parameter.
332     * 
333     * @param type a type object.
334     */
335    public void setType( String type )
336    {
337        this.type = type;
338    } //-- void setType( String )
339
340}