1 /*
2 =================== DO NOT EDIT THIS FILE ====================
3 Generated by Modello 1.4.1 on 2012-01-20 18:05:12,
4 any modifications will be overwritten.
5 ==============================================================
6 */
7
8 package org.apache.maven.plugin.descriptor.model;
9
10 /**
11 * A phase mapping definition.
12 *
13 * @version $Revision$ $Date$
14 */
15 @SuppressWarnings( "all" )
16 public class Parameter
17 implements java.io.Serializable
18 {
19
20 //--------------------------/
21 //- Class/Member Variables -/
22 //--------------------------/
23
24 /**
25 *
26 * The name of the parameter, to be used in
27 * configuring this parameter from the Mojo's declared defaults
28 * or from the POM.
29 *
30 */
31 private String name;
32
33 /**
34 *
35 * Specifies an alias which can be used to
36 * configure this parameter from the POM.
37 * This is primarily useful to improve
38 * user-friendliness, where Mojo field names are not intuitive
39 * to the
40 * user or are otherwise not conducive to
41 * configuration via the POM.
42 *
43 */
44 private String alias;
45
46 /**
47 *
48 * The Java type for this parameter. This is used
49 * to validate the result of any expressions used to calculate
50 * the value which should be injected into the Mojo
51 * for this parameter.
52 *
53 */
54 private String type;
55
56 /**
57 *
58 * Whether this parameter is required for the Mojo
59 * to function. This is used to validate the configuration
60 * for a Mojo before it is injected, and before the
61 * Mojo is executed from some half-state.
62 *
63 */
64 private boolean required = false;
65
66 /**
67 *
68 * Specifies that this parameter cannot be
69 * configured directly by the user (as in the case of
70 * POM-specified
71 * configuration). This is useful when you want to
72 * force the user to use common POM elements rather than
73 * plugin configurations, as in the case where you
74 * want to use the artifact's final name as a parameter. In
75 * this case, you want the user to modify
76 * <code><build><finalName/></build></code>
77 * rather
78 * than specifying a value for finalName directly
79 * in the plugin configuration section. It is also useful to
80 * ensure that - for example - a List-typed
81 * parameter which expects items of type Artifact doesn't get a
82 * List
83 * full of Strings.
84 *
85 */
86 private boolean editable = true;
87
88 /**
89 * Field implementation.
90 */
91 private String implementation;
92
93 /**
94 * The description of this parameter's use inside the Mojo.
95 */
96 private String description;
97
98 /**
99 * Specify the version when the parameter was added to the API.
100 * Similar to Javadoc since.
101 */
102 private String since;
103
104 /**
105 *
106 * Specify the version when the parameter was
107 * deprecated to the API. Similar to Javadoc deprecated.
108 * This will trigger a warning when a user tries to
109 * configure a parameter marked as deprecated.
110 *
111 */
112 private String deprecated;
113
114
115 //-----------/
116 //- Methods -/
117 //-----------/
118
119 /**
120 * Get specifies an alias which can be used to configure this
121 * parameter from the POM.
122 * This is primarily useful to improve
123 * user-friendliness, where Mojo field names are not intuitive
124 * to the
125 * user or are otherwise not conducive to
126 * configuration via the POM.
127 *
128 * @return String
129 */
130 public String getAlias()
131 {
132 return this.alias;
133 } //-- String getAlias()
134
135 /**
136 * Get specify the version when the parameter was deprecated to
137 * the API. Similar to Javadoc deprecated.
138 * This will trigger a warning when a user tries to
139 * configure a parameter marked as deprecated.
140 *
141 * @return String
142 */
143 public String getDeprecated()
144 {
145 return this.deprecated;
146 } //-- String getDeprecated()
147
148 /**
149 * Get the description of this parameter's use inside the Mojo.
150 *
151 * @return String
152 */
153 public String getDescription()
154 {
155 return this.description;
156 } //-- String getDescription()
157
158 /**
159 * Get the implementation field.
160 *
161 * @return String
162 */
163 public String getImplementation()
164 {
165 return this.implementation;
166 } //-- String getImplementation()
167
168 /**
169 * Get the name of the parameter, to be used in configuring
170 * this parameter from the Mojo's declared defaults
171 * or from the POM.
172 *
173 * @return String
174 */
175 public String getName()
176 {
177 return this.name;
178 } //-- String getName()
179
180 /**
181 * Get specify the version when the parameter was added to the
182 * API. Similar to Javadoc since.
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. This is used to
193 * validate the result of any expressions used to calculate
194 * the value which should be injected into the Mojo
195 * for this parameter.
196 *
197 * @return String
198 */
199 public String getType()
200 {
201 return this.type;
202 } //-- String getType()
203
204 /**
205 * Get specifies that this parameter cannot be configured
206 * directly by the user (as in the case of POM-specified
207 * configuration). This is useful when you want to
208 * force the user to use common POM elements rather than
209 * plugin configurations, as in the case where you
210 * want to use the artifact's final name as a parameter. In
211 * this case, you want the user to modify
212 * <code><build><finalName/></build></code>
213 * rather
214 * than specifying a value for finalName directly
215 * in the plugin configuration section. It is also useful to
216 * ensure that - for example - a List-typed
217 * parameter which expects items of type Artifact doesn't get a
218 * List
219 * full of Strings.
220 *
221 * @return boolean
222 */
223 public boolean isEditable()
224 {
225 return this.editable;
226 } //-- boolean isEditable()
227
228 /**
229 * Get whether this parameter is required for the Mojo to
230 * function. This is used to validate the configuration
231 * for a Mojo before it is injected, and before the
232 * Mojo is executed from some half-state.
233 *
234 * @return boolean
235 */
236 public boolean isRequired()
237 {
238 return this.required;
239 } //-- boolean isRequired()
240
241 /**
242 * Set specifies an alias which can be used to configure this
243 * parameter from the POM.
244 * This is primarily useful to improve
245 * user-friendliness, where Mojo field names are not intuitive
246 * to the
247 * user or are otherwise not conducive to
248 * configuration via the POM.
249 *
250 * @param alias
251 */
252 public void setAlias( String alias )
253 {
254 this.alias = alias;
255 } //-- void setAlias( String )
256
257 /**
258 * Set specify the version when the parameter was deprecated to
259 * the API. Similar to Javadoc deprecated.
260 * This will trigger a warning when a user tries to
261 * configure a parameter marked as deprecated.
262 *
263 * @param deprecated
264 */
265 public void setDeprecated( String deprecated )
266 {
267 this.deprecated = deprecated;
268 } //-- void setDeprecated( String )
269
270 /**
271 * Set the description of this parameter's use inside the Mojo.
272 *
273 * @param description
274 */
275 public void setDescription( String description )
276 {
277 this.description = description;
278 } //-- void setDescription( String )
279
280 /**
281 * Set specifies that this parameter cannot be configured
282 * directly by the user (as in the case of POM-specified
283 * configuration). This is useful when you want to
284 * force the user to use common POM elements rather than
285 * plugin configurations, as in the case where you
286 * want to use the artifact's final name as a parameter. In
287 * this case, you want the user to modify
288 * <code><build><finalName/></build></code>
289 * rather
290 * than specifying a value for finalName directly
291 * in the plugin configuration section. It is also useful to
292 * ensure that - for example - a List-typed
293 * parameter which expects items of type Artifact doesn't get a
294 * List
295 * full of Strings.
296 *
297 * @param editable
298 */
299 public void setEditable( boolean editable )
300 {
301 this.editable = editable;
302 } //-- void setEditable( boolean )
303
304 /**
305 * Set the implementation field.
306 *
307 * @param implementation
308 */
309 public void setImplementation( String implementation )
310 {
311 this.implementation = implementation;
312 } //-- void setImplementation( String )
313
314 /**
315 * Set the name of the parameter, to be used in configuring
316 * this parameter from the Mojo's declared defaults
317 * or from the POM.
318 *
319 * @param name
320 */
321 public void setName( String name )
322 {
323 this.name = name;
324 } //-- void setName( String )
325
326 /**
327 * Set whether this parameter is required for the Mojo to
328 * function. This is used to validate the configuration
329 * for a Mojo before it is injected, and before the
330 * Mojo is executed from some half-state.
331 *
332 * @param required
333 */
334 public void setRequired( boolean required )
335 {
336 this.required = required;
337 } //-- void setRequired( boolean )
338
339 /**
340 * Set specify the version when the parameter was added to the
341 * API. Similar to Javadoc since.
342 *
343 * @param since
344 */
345 public void setSince( String since )
346 {
347 this.since = since;
348 } //-- void setSince( String )
349
350 /**
351 * Set the Java type for this parameter. This is used to
352 * validate the result of any expressions used to calculate
353 * the value which should be injected into the Mojo
354 * for this parameter.
355 *
356 * @param type
357 */
358 public void setType( String type )
359 {
360 this.type = type;
361 } //-- void setType( String )
362
363 }