001// =================== DO NOT EDIT THIS FILE ====================
002// Generated by Modello 1.8.1,
003// any modifications will be overwritten.
004// ==============================================================
005
006package org.apache.maven.plugin.descriptor.model;
007
008/**
009 * A phase mapping definition.
010 * 
011 * @version $Revision: 879455 $ $Date: 2013-09-22 16:29:47 +0000 (Sun, 22 Sep 2013) $
012 */
013@SuppressWarnings( "all" )
014public class Parameter
015    implements java.io.Serializable
016{
017
018      //--------------------------/
019     //- Class/Member Variables -/
020    //--------------------------/
021
022    /**
023     * 
024     *             The name of the parameter, to be used while
025     * configuring this parameter from the Mojo's declared defaults
026     *             or from the POM.
027     *           
028     */
029    private String name;
030
031    /**
032     * 
033     *             Specifies an alias which can be used to
034     * configure this parameter from the POM.
035     *             This is primarily useful to improve
036     * user-friendliness, where Mojo field names are not intuitive
037     * to the
038     *             user or are otherwise not conducive to
039     * configuration via the POM.
040     *           
041     */
042    private String alias;
043
044    /**
045     * 
046     *             The Java type for this parameter. This is used
047     * to validate the result of any expressions used to calculate
048     *             the value which should be injected into the Mojo
049     * for this parameter.
050     *           
051     */
052    private String type;
053
054    /**
055     * 
056     *             Whether this parameter is required for the Mojo
057     * to function. This is used to validate the configuration
058     *             for a Mojo before it is injected, and before the
059     * Mojo is executed from some half-state.
060     *           
061     */
062    private boolean required = false;
063
064    /**
065     * 
066     *             Specifies that this parameter can be configured
067     * directly by the user (as in the case of POM-specified
068     *             configuration). This is useful when you want to
069     * force the user to use common POM elements rather than
070     *             plugin configurations, as in the case where you
071     * want to use the artifact's final name as a parameter. In
072     *             this case, you want the user to modify
073     * <code>&lt;build&gt;&lt;finalName/&gt;&lt;/build&gt;</code>
074     * rather
075     *             than specifying a value for finalName directly
076     * in the plugin configuration section. It is also useful to
077     *             ensure that - for example - a List-typed
078     * parameter which expects items of type Artifact doesn't get a
079     * List
080     *             full of Strings.
081     *           
082     */
083    private boolean editable = true;
084
085    /**
086     * Field implementation.
087     */
088    private String implementation;
089
090    /**
091     * The description of this parameter's use inside the Mojo.
092     */
093    private String description;
094
095    /**
096     * Specify the version when the parameter was added to the API.
097     * Similar to Javadoc since.
098     */
099    private String since;
100
101    /**
102     * 
103     *             Specify the version when the parameter was
104     * deprecated to the API. Similar to Javadoc deprecated.
105     *             This will trigger a warning when a user tries to
106     * configure a parameter marked as deprecated.
107     *           
108     */
109    private String deprecated;
110
111
112      //-----------/
113     //- Methods -/
114    //-----------/
115
116    /**
117     * Get specifies an alias which can be used to configure this
118     * parameter from the POM.
119     *             This is primarily useful to improve
120     * user-friendliness, where Mojo field names are not intuitive
121     * to the
122     *             user or are otherwise not conducive to
123     * configuration via the POM.
124     * 
125     * @return String
126     */
127    public String getAlias()
128    {
129        return this.alias;
130    } //-- String getAlias()
131
132    /**
133     * Get specify the version when the parameter was deprecated to
134     * the API. Similar to Javadoc deprecated.
135     *             This will trigger a warning when a user tries to
136     * configure a parameter marked as deprecated.
137     * 
138     * @return String
139     */
140    public String getDeprecated()
141    {
142        return this.deprecated;
143    } //-- String getDeprecated()
144
145    /**
146     * Get the description of this parameter's use inside the Mojo.
147     * 
148     * @return String
149     */
150    public String getDescription()
151    {
152        return this.description;
153    } //-- String getDescription()
154
155    /**
156     * Get the implementation field.
157     * 
158     * @return String
159     */
160    public String getImplementation()
161    {
162        return this.implementation;
163    } //-- String getImplementation()
164
165    /**
166     * Get the name of the parameter, to be used while configuring
167     * this parameter from the Mojo's declared defaults
168     *             or from the POM.
169     * 
170     * @return String
171     */
172    public String getName()
173    {
174        return this.name;
175    } //-- String getName()
176
177    /**
178     * Get specify the version when the parameter was added to the
179     * API. Similar to Javadoc since.
180     * 
181     * @return String
182     */
183    public String getSince()
184    {
185        return this.since;
186    } //-- String getSince()
187
188    /**
189     * Get the Java type for this parameter. This is used to
190     * validate the result of any expressions used to calculate
191     *             the value which should be injected into the Mojo
192     * for this parameter.
193     * 
194     * @return String
195     */
196    public String getType()
197    {
198        return this.type;
199    } //-- String getType()
200
201    /**
202     * Get specifies that this parameter can be configured directly
203     * by the user (as in the case of POM-specified
204     *             configuration). This is useful when you want to
205     * force the user to use common POM elements rather than
206     *             plugin configurations, as in the case where you
207     * want to use the artifact's final name as a parameter. In
208     *             this case, you want the user to modify
209     * <code>&lt;build&gt;&lt;finalName/&gt;&lt;/build&gt;</code>
210     * rather
211     *             than specifying a value for finalName directly
212     * in the plugin configuration section. It is also useful to
213     *             ensure that - for example - a List-typed
214     * parameter which expects items of type Artifact doesn't get a
215     * List
216     *             full of Strings.
217     * 
218     * @return boolean
219     */
220    public boolean isEditable()
221    {
222        return this.editable;
223    } //-- boolean isEditable()
224
225    /**
226     * Get whether this parameter is required for the Mojo to
227     * function. This is used to validate the configuration
228     *             for a Mojo before it is injected, and before the
229     * Mojo is executed from some half-state.
230     * 
231     * @return boolean
232     */
233    public boolean isRequired()
234    {
235        return this.required;
236    } //-- boolean isRequired()
237
238    /**
239     * Set specifies an alias which can be used to configure this
240     * parameter from the POM.
241     *             This is primarily useful to improve
242     * user-friendliness, where Mojo field names are not intuitive
243     * to the
244     *             user or are otherwise not conducive to
245     * configuration via the POM.
246     * 
247     * @param alias
248     */
249    public void setAlias( String alias )
250    {
251        this.alias = alias;
252    } //-- void setAlias( String )
253
254    /**
255     * Set specify the version when the parameter was deprecated to
256     * the API. Similar to Javadoc deprecated.
257     *             This will trigger a warning when a user tries to
258     * configure a parameter marked as deprecated.
259     * 
260     * @param deprecated
261     */
262    public void setDeprecated( String deprecated )
263    {
264        this.deprecated = deprecated;
265    } //-- void setDeprecated( String )
266
267    /**
268     * Set the description of this parameter's use inside the Mojo.
269     * 
270     * @param description
271     */
272    public void setDescription( String description )
273    {
274        this.description = description;
275    } //-- void setDescription( String )
276
277    /**
278     * Set specifies that this parameter can be configured directly
279     * by the user (as in the case of POM-specified
280     *             configuration). This is useful when you want to
281     * force the user to use common POM elements rather than
282     *             plugin configurations, as in the case where you
283     * want to use the artifact's final name as a parameter. In
284     *             this case, you want the user to modify
285     * <code>&lt;build&gt;&lt;finalName/&gt;&lt;/build&gt;</code>
286     * rather
287     *             than specifying a value for finalName directly
288     * in the plugin configuration section. It is also useful to
289     *             ensure that - for example - a List-typed
290     * parameter which expects items of type Artifact doesn't get a
291     * List
292     *             full of Strings.
293     * 
294     * @param editable
295     */
296    public void setEditable( boolean editable )
297    {
298        this.editable = editable;
299    } //-- void setEditable( boolean )
300
301    /**
302     * Set the implementation field.
303     * 
304     * @param implementation
305     */
306    public void setImplementation( String implementation )
307    {
308        this.implementation = implementation;
309    } //-- void setImplementation( String )
310
311    /**
312     * Set the name of the parameter, to be used while configuring
313     * this parameter from the Mojo's declared defaults
314     *             or from the POM.
315     * 
316     * @param name
317     */
318    public void setName( String name )
319    {
320        this.name = name;
321    } //-- void setName( String )
322
323    /**
324     * Set whether this parameter is required for the Mojo to
325     * function. This is used to validate the configuration
326     *             for a Mojo before it is injected, and before the
327     * Mojo is executed from some half-state.
328     * 
329     * @param required
330     */
331    public void setRequired( boolean required )
332    {
333        this.required = required;
334    } //-- void setRequired( boolean )
335
336    /**
337     * Set specify the version when the parameter was added to the
338     * API. Similar to Javadoc since.
339     * 
340     * @param since
341     */
342    public void setSince( String since )
343    {
344        this.since = since;
345    } //-- void setSince( String )
346
347    /**
348     * Set the Java type for this parameter. This is used to
349     * validate the result of any expressions used to calculate
350     *             the value which should be injected into the Mojo
351     * for this parameter.
352     * 
353     * @param type
354     */
355    public void setType( String type )
356    {
357        this.type = type;
358    } //-- void setType( String )
359
360}